在Java中提供了四种访问权限,使用不同的访问权限修饰符修饰时,被修饰的内容会有不同的访问权限,
在Java中,有四种访问权限修饰符,它们分别控制了代码中元素的可见性:
public | protected | (默认) | private | |
---|---|---|---|---|
同一类中 | √ | √ | √ | √ |
同一包中 | √ | √ | √ | |
不同包的子类 | √ | √ | ||
不同包的无关类 | √ |
示例代码
// 包: com.itheima.demo9_权限修饰符
public class AAA {
public void method1() {}
protected void method2() {}
void method3() {}
private void method4() {}
public void method() {
method1();
method2();
method3();
method4();
}
}
public class Test {
public static void main(String[] args) {
AAA a = new AAA();
a.method1();
a.method2();
a.method3();
// a.method4(); // 私有方法,编译报错
}
}
总结建议:
{}
示例代码:
public class Person {
{
System.out.println("构造代码块执行了");
}
}
static{}
示例代码:
public class Person {
private String name;
private int age;
static {
System.out.println("静态代码块执行了");
}
}
{}
示例代码:
public static void main(String[] args) {
int a = 10;
{
int b = 20; // b的作用域仅在此块内
}
// int a = 30; // 编译报错,同名变量
int b = 40; // 不冲突,作用域不同
}
static 关键字用于修饰类成员,属于类,而非某个对象。多个对象共享 static 修饰的成员。
定义格式:
static 数据类型 变量名;
示例:
public class Student {
private String name;
private int age;
public static String school = "黑马程序员学校"; // 类变量
// 构造方法
public Student(String name, int age) {
this.name = name;
this.age = age;
}
}
定义格式:
修饰符 static 返回值类型 方法名(参数列表) {
// 执行语句
}
示例:
public static void showNum() {
System.out.println("学生人数:"+ numberOfStudent);
}
静态方法调用注意事项:
调用格式:
类名.静态变量名;
类名.静态方法名(参数);
java.lang.Object
是Java的根类,所有类的父类。常用方法:
public String toString()
public boolean equals(Object obj)
java.util.Date
表示一个日期和时间,精确到毫秒。
public Date()
public Date(long date)
public long getTime()
public void setTime(long time)
java.text.DateFormat
是抽象类,用于日期和字符串之间转换。
常用标识符:
y
:年M
:月d
:日public String format(Date date)
public Date parse(String source)
java.util.Calendar
表示一个日历类,抽象类,通过子类使用。
public static Calendar getInstance()
public int get(int field)
java.lang.Math
包含基本数字运算方法,不能创建对象。
public static int abs(int a)
public static double ceil(double a)
java.lang.System
提供系统相关的静态方法。
public static void exit(int status)
public static long currentTimeMillis()
java.math.BigInteger
为任意精度整数。
BigInteger(String value)
java.math.BigDecimal
提供更精准的数据计算。
BigDecimal(double val)
BigDecimal(String val)
java.util.Arrays
提供数组操作的方法。
public static void sort(int[] a)
public static String toString(int[] a)
包装类将基本类型封装为对象,如:
int
-> Integer
char
-> Character
本站为非盈利网站,如果您喜欢这篇文章,欢迎支持我们继续运营!
本站主要用于日常笔记的记录和生活日志。本站不保证所有内容信息可靠!(大多数文章属于搬运!)如有版权问题,请联系我立即删除:“abcdsjx@126.com”。
QQ: 1164453243
邮箱: abcdsjx@126.com