类的特性

封装性:

   1.所有的变量私有化,写一些set-get方法供外面操作这些属性

   2.写一些构造方法,供外面在创建对象时,直接把数据封装到对象中

   在构造器中调用构造器,用this();

如:public Mydate(int year,int month,int day){

      this.year=year;   this.month=month;   this.day=day;

  } public Mydate(Mydate d){

   this(d.year,d.month,d.day);

  }

类的访问权限:只有两种,公有和缺省

类中成员访问权限:有四种:私有,缺省,保护,公有

private:只有当前类可以访问

缺省:只有当前包的类可以访问

protected:当前包的所有类或其他包中是子类的可以访问

public:任意类都可以访问

类模板中静态的东西不拷到堆中,静态的东西是属于类的,是所有对象公共的,非静态的东西属于对象,在堆中操作。

静态块:在第一次使用类模板时调用,且只调用一次,如果要在第一次使用类模板时执行某些代码,如给静态变量赋值,要用多行代码,则需要使用静态块。

深拷贝:让所有的变量赋值都达到基本数据类型赋值的深度

浅拷贝:存在引用赋值

继承:

子类覆盖父类方法,子类的权限不能低于父类的权限。如果父类的权限为public则子类的也要为public

覆盖方法的约束:前(权限)不能小,后(异常)不能大

多态性:

编译时多态:看类型(等号左边)

运行时多态:看内存(等号右边)new谁调谁(先看当前类,后看父类),首先要编译时多态通过,即父类和子类中都有同一个函数。

抽象性:只能当父类,不能new对象,不能实例化

如果一个类中包含抽象方法,则这个类一定是抽象类

接口:完全抽象类=(常量+抽象方法)

接口可以继承多个接口

一个类要实现接口,必须把接口里的所有抽象方法都实现,否则要申明为抽象类,实现类即为子类,权限不能低于父类。

接口里的都是静态的,所以只要类模板中有一个,可以作为公共的函数,常量,都是公共的,可以省内存。

内部类:不能直接new对象,要用外部类的对象.new();

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值