关于构造块|block块| 定义一个person类||继承的小结

构造块在编译的时候会被放在构造器语句块中代码的最上面,如果存在this调用其他构造器,必然先调用其他构造器,因为this必须存在于首行才能调用其他构造器
*

  • 使用debug调试:
  • 1.先打断点
  • 2.debug模式运行 f5进入细节 f6下一步执行 f7返回方法的调用出

block块:{} 就是一个作用域

  • {}->方法中|语句块中 --局部代码块|普通语句块 执行时机:跟随方法执行
  • {}->类中方法外 --构造块 执行时机:new对象
  • static{} ->类中方法外–静态块 执行时机:类第一次加载的时候
  • 同步块–>多线程
  • 注意:构造块会在创建对象的时候,其中一步调用构造器,构造块会在构造器之前执行,如果由多个构造块,从上倒下依次执行
  •  静态块是静态的内容,会在类第一次加载的时候执行一次
    
  • 执行顺序:静态块–main–构造块–构造器
    static 静态的
  • static修饰变量->静态变量|类变量 static是成员修饰符,不能修饰局部
  • static修饰方法->静态方法|类方法
  • 被static修饰的方法|变量使用方式:
  •  					1.类名.静态变量名
    
  •  					     类名.静态方法名
    
  •  					2.对象.静态变量名
    
  •  					     对象.静态方法名
    
  • 静态的内容是属于类的,成员的内容是都属于对象的,跟随对象使用
  • 静态的变量会在类第一次加载时候加载,独有一份,当前类中所有对象共享的资源
  • 在静态的内容中,可以直接使用静态的内容,不可以直接使用非静态的内容
  • 再非静态的内容中,可以直接使用静态的内容,可以直接使用非静态的内容

定义一个person类

  • 安全隐患: 不想让外部能够随便使用成员属性,保证属性安全

  • private 私有的 成员修饰符,不能修饰局部变量

  • 私有的内容,只能在本类中使用

  • 对的私有的内容提供公共访问方式 设置器 访问器

  •  方法  setter  getter
    
  • 私有的属性,公共的访问方式真的安全了么???

  •  1.不能直接操作属性  2.使用逻辑进行判断
    
  • 面向对象的三大特性之一:

  •  封装:对外隐藏内部的实现细节,提供公共的访问方式
    
  • 私有是封装么???

  •  私有肯定是封装
    
  • 封装不一定只有私有

  •  方法,类..都是封装的体现
    
  • 好处:
    A:隐藏实现细节,提供公共的访问方式
    B:提高代码的复用性
    C:提高代码的安全性

    javabean类:–>实体类|模板类|封装类
    javaBean编码规则:
    (1) javaBean必须声明为public class,这样才能够被外部所访问;
    (2) 一个JavaBean中至少存在一个无参构造方法
    (3)类中所有的属性都必须封装,即:使用private声明;
    (4)为封装的私有属性提供公共的setter、getter方法;

|继承: 子承父业

  • 为什么使用继承:
  •  为了达到类层面的复用
    
  • 如何使用继承:
  •  子类  extends 父类
    
  • 特点:
  •  1.子类一旦继承父类,就自用拥有了父类中的内容
    
  •  2.一个类可以有多个子类,一个类只能有一个父类,单继承机制,多实现
    
  •  3.子类是父类的延续+扩展
    
  • 父类|基类|超类:–>被继承的类
  • 子类|派生类:–>继承其他类的类
  • 继承的优点:
  •  提高代码的复用性
    
  • 单继承的优点: 使用简单
  • 但继承的缺点: 不便于后期维护
  • 面向对象设计原则之一:开闭原则 对修改关闭,对扩展开放

猜你喜欢

转载自blog.csdn.net/PussyCatsss/article/details/90744717