Java学习第十天

一:复习回顾: 
static关键字
 修饰成员变量,方法,块。 
 变量: 
 a:随着类的加载而加载
 b:生命周期比较长。 
 c:所有的对象够共享,存放在共享区。 
 d:可以类名点形式调用。 
 方法: 静态方法。 
 a:访问受局限 静态方法当中只能访问静态。 
 b:优于对象存在,类名.方法名调用。 不能出现this关键。 
 块: 
 静态块:给类进行初始。 
 static{ 
 }
 执行顺序: 静态块,动态块,构造器。 
 静态块 动态块 构造器 
 工具类: 对外提供一些通用性的功能。 构造器时私有的。 
         类当中所有的方法都是静态。 
二: 设计模式
 解决某一类问题行之有效的方法。 
 java当中存在23种设计模式。 23设计模式 可以解决现实生活当中的任何问题。 
 单例模式: 对外只提供一个对象。 
 单例模式的实现:
 饿汉模式: 
 步骤: 
 (1)提供一个本类私有,静态,final 对象 作为成员变量,并且个成员变量进行赋值。
 (2)私有的构造器,目的,不允许对完创建对象。
 (3)对外提供一个公共的方法。方法返回当前对象的实例。
 懒汉模式: 
  (1) 提供一个私有的,静态的本类成员变量。未进行初始化。
 (2)私有的构造器,目的,不允许对完创建对象。
 (3)对外提供一个公共的方法。方法返回当前对象的实例。
  建议:懒汉模式会出现多线程安全问题,所以建议大家使用饿汉模式。 
三: 封装: 
 1:定义: 将私密的数据或者是功能影藏起来,隐藏了内部的实现细节。对外提供公共的访问方法。 
 2: 优点:
  a:隐藏了内部的实现细节。
  b:保护了数据安全。

3:
 数据成员私有化: private 
 get set方法。
 public 返回值 getXxx(){
return xxx;
 }
 设置值: set方法:
 public void setXxx(String str){
this.str=str;
 }
四:继承: 
 1:定义: 一个类A得到了类B的全部内容(除了私有和构造器之外),那么类A称之为继承了类B。     
     那么类A称之为:子类。 派生类 :sub
     B类称之为:父类。基类。超类 sup    
 2: 语法: 
     public class subClass extends supClass{
//得到父类的成员: 包括除了私有的属性和构造器之外的成员。
// 扩展子类自己的属性。
// 扩展自己的行为
     }
 3: 继承有什么优势:
     (1)减少了代码的冗余。 
     (2)实现多态机制的前提。
 4: 继承的使用要点: 
    a:父类的私有属性不能被继承。
    b:父类的构造器不能被子类继承,但是可以通过super关键字,完成对父类构造器的调用。
      完成从父类当中继承过来的一些属性的初始化动作。      
    c:在子类当中扩展自己的新功能: 
 五:在类族当中构造器的使用要点: (面试问题) 
   (1)在父类当中定义了有参数的构造器,那么系统就不会默认给提供无参数构造器了。
        在子类当中,构造器的第一条语句处,默认使用super关键字调用了父类的无参数构造器。
所以在给父类提供了有参数构造器之后,要默认给提供一个无参数构造器,否则报错。  
  (2)在具有继承关系的类族当中,静态块,动态块,构造器的执行顺序: 
    a:具有继承关系的类族当中构造器的执行顺序:先执行父类的构造器,后执行子类的构造器。
    b:具有继承关系的类族当中,动态块,构造器的执行顺序:  先执行父类的动态块,再执行父类的构造器。 
       最后执行子类的动态块,子类的构造器。
    c:具有继承关系的类组当中静态块,动态块,构造器执行顺序:
      先执行父类的静态块,后执行子类的静态块。
      再次执行父类的动态块,和构造器
      最后执行子类的动态块,子类构造器。 
  六:方法的重写(重点)
     1:子类对父类同名方法的覆盖,要求子类的返回值 参数列表,以及方法值类型必须相同。 
         访问权限修饰符: 子类的访问权限必须大于等于父类的访问权限。 
         父类如果抛出了异常,子类可以抛出异常,也可以不抛出异常。 
如果子类抛出异常,那么抛出的异常类型必须小于等于父类的异常类型。   
        访问权限: public protected 默认的 private  
  七:final关键字
      (1)final可以修饰变量,修饰的变量称之为常量。 值不允许改变。
      (2)final还可以修饰类: 被final修饰的类不能被继承。
      (3)final还可以修饰方法,被final修饰的方法不能被重写。 
  八:super关键字: 
      (1)用在子类的构造器当中的第一条语句处,表示调用父类的构造器。 
           super(name);
       (2)调用父类被字符覆盖掉的方法;         
  九:继承的弊端: 
    (1)继承只能单继承。 
    (2)继承使得父类和子类的关系过于紧密,耦合度高。不利于系统的扩展。 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值