final、static、匿名对象、内部类、包的声明与访问、四种访问修饰符、代码块
2018-01-10 20:48
453 查看
final:关键字,最终的意思
final修饰的类:最终的类,不能被继承final修饰的变量:相当于是一个常量, 在编译生产.class文件后,该变量变为常量值
final修饰的方法:最终的方法,子类不能重写,可以继承过来使用
static : 关键字, 静态的意思
可以用来修饰类中的成员(成员变量,成员方法)注意: 也可以用来修饰成员内部类
特点:
被静态所修饰的成员,会被所有的对象所共享
被静态所修饰的成员,可以通过类名直接调用,方便
Person.country = "中国";
Person.method();
注意事项:
静态的成员,随着类的加载而加载,优先于对象存在
在静态方法中,没有this关键字
静态方法中,只能调用静态的成员(静态成员变量,静态成员方法
匿名对象:一个没有名字的对象
特点:创建匿名对象直接使用,没有变量名
匿名对象在没有指定其引用变量时,只能使用一次
匿名对象可以作为方法接收的参数、方法返回值使用
内部类:在一个类中,定义了一个新类,这个新的类就是内部类
class A {//外部类class B{// 内部类
}
}
特点:
内部类可以直接访问外部类的成员,包含私有的成员
包的声明与访问
类中包的声明格式:package 包名.包名.包名…;
带有包的类,创建对象格式:包名.类名 变量名 = new包名.类名();
cn.itcast.Demo d = new cn.itcast.Demo();
导包的格式:
import 包名.类名;
权限修饰符
public : 公共的protected: 受保护的
private : 私有的
public
protected
默认的
private
在当前类中
Y
Y
Y
Y
同一包中的其他类
Y
Y
Y
不同包中的子类
Y
Y
不同包中的其他类
Y
代码块:
局部代码块:定义在方法中的,用来限制变量的作用范围构造代码块:定义在类中方法外,用来给对象中的成员初始化赋值
静态代码块:定义在类中方法外,用来给类的静态成员初始化赋值
相关文章推荐
- mabatis学习之前今日内容介绍 1、final 关键字 2、static 关键字 3、匿名对象 4、内部类 5、包的声明与访问 6、访问修饰符 7、代码块 第一节课 ###01(面向对象)fin
- java基础 final static 匿名对象 内部类 包的声明与访问 四种访问修饰符 代码块
- javaSE day13 final static 匿名对象 内部类 包的声明与访问 四种访问修饰符 代码块
- JAVAEE第15天-static,final关键字,访问权限修饰符,内部类,静态代码块,包的声明和导入
- day04-面向对象【内部类、static、包、访问修饰符、final】
- Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类
- static、final、匿名对象、内部类
- java【内部类、static、包、访问修饰符、final】
- Java之final、static、匿名对象和内部类
- JAVA匿名内部类不能访问外部类方法中的局部变量,除非变量被声明为final类型
- 匿名内部类和局部内部类中只能访问final变量的原因
- Java中什么是匿名对象,空参构造方法输出创建了几个匿名对象,属性声明成static
- static、final修饰符、内部类
- 匿名内部类使用了一个在其外部定义的对象,为什么编译器会要求其参数引用是final呢
- 匿名内部类访问外部类中的局部变量必须是final属性
- java局部内部类和匿名内部类访问局部final变量的剖析
- 为什么匿名内部类只能访问其所在方法中的final类型的局部变量?
- 【面试对宝典40题的解释】为什么从内部类中访问局部变量需要被声明为final最终类型
- 匿名内部类访问外部类的实例方法的局部变量时,局部变量必须是final
- 为什么匿名内部类只能访问其所在方法中的final变量