第八章 类高级概念
来源:互联网 发布:淘宝手机排名 编辑:程序博客网 时间:2024/04/26 01:35
一、访问控制属性
public:权限最大的。所有的地方都可以用,可以直接用实例化对象用“.”来访问。如方法和属性。不过为了保证封装性,一般属性都用private,不对外提供或继承的方法也用private。
private:权限最小的,只有在类的定义了中才能使用。就是类自身才能使用。可以很好的保持封装的特性。
protected:只比public小,在同胞中和子类中都可访问,用“.”。
什么都不写: 默认的,在同胞中可以访问。
二、代码块
类中的代码块一定在 构造器之前执行。
static:静态的,共享的。被它修饰的属性或者方法,是整个类共用的。可以用ClassName直接访问。当然对象名也可以
其他属性,方法:一般都是每个对象私有的,必须先要有对象,才能使用。
静态方法中,只能访问静态的属性或者方法,其他动态的加载时不能确定。
静态的都是加载时执行的。所以在没有对象之前就存在了,类名可以访问它,但是它不能访问 不存在的对象。
但是没有对象,就没有对象的属性和方法。无法访问。
静态代码块:static{*************}这个代码块是在类加载器加载class文件时,执行的。只有一次。用作环境和资源的初始化。
普通代码块:{****************}它是在实例化每个对象时比如new ClassName()都会调用的,而且比构造器先执行。一般很少用
三、内部类
成员内部类的保存:
OuterClassName$InnerClassName.class
1.成员内部类:
写在属性后面的,没有在方法体中。 Outer out = new Outer(); Inner in = out.new Inner();
2.静态内部类:
如果成员内部类被static修饰,那么他就是静态内部类了,跟静态变量一样,整个类共享;可以通过类名直接使用。
Inner in = new Outer.Inner();
3.局部内部类:
写在方法体中,所以可以类名相同;且只能在方法中使用。它的生命周期在这个方法中,外部不可见。
局部内部类的保存:
OuterClassName$这里为出现的第几次InnerClassName.class
4.匿名内部类:
如果写在方法的参数中,如 Method(new ClassName(){ 属性,方法}
);就是一个匿名内部类了。只有使用,没有名字(引用指向它)。
列子:
public class FormatTest {private static int maxStringLength;private static double minSize;public FormatTest(){}public FormatTest(int maxStringLength,double minSize){this.minSize = minSize;this.maxStringLength = maxStringLength;}public static boolean testStringLength(String str){if(str.length() <= maxStringLength){return true;}else{return false;}}public static boolean testDouble(double d){if(d >= minSize){return true;}else{return false;}}}
- 第八章 类高级概念
- 第八章类的高级概念
- 学习小结(第八章类的高级概念)
- 第八章 类的高级
- 第八章 C++函数的高级特性(8.1 函数重载的概念)
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- 类的高级概念
- C++高级编程 第八章: 掌握类和对象
- 第八章 高级视图和URL配置
- 第八章:高级视图和URL配置
- Javascript高级程序设计第八九章
- 10月总结
- Android应用开发之(按需设置Broadcast receiver)
- 歌厅歌曲管理系统(转)用c语言实现的一个课程设计
- python:将数字转换成用英文表达的程序
- Oracle中的NULL和空字符串
- 第八章 类高级概念
- 我的JAVA学习笔记(记下一些容易忘记的知识点)持续更新
- C编程解线性代数二阶三阶矩阵(奇迹冬瓜)
- android 简单的触屏事件
- 读完《深度探索C++对象模型》第一遍感悟
- 关于 Android SDK r20.0.1 更新后,Hierarchical Parent 必须填写的解决办法
- js之表格api:99乘法表
- 虚继承与虚基类的本质
- Word2007里EndNote图标突然消失不见的原因及解决方法