2021-10-04月总结

 面向对象:

类和对象的关系 

 类的定义:

 注意事项:

 如何创建对象:

 一个对象的内存图:

 

两个对象使用同一个方法: 

两个引用指向同一个对象:

 使用对象类型作为方法的参:

 使用对象类型作为方法的返:

成员变量与全局变量的区别: 

 面向对象的特点:

private的使用:

 this的用法:

如何构造一个方法: 

 构造方法的注意事项:

 定义一个标准的类:

 多态:

类型为X的的参考变量,其指向的对象类型既可以是X,也可以是X的子类。

一个对象声明时,可以是父类,但赋值时可以给子类赋值。

eg:Student s; s = new Colleague()

(句柄s 能访问那些成员变量是由其类型决定的。)

但是可以通过强制类型转化就可以访问子类的成员变量了。

多态的用途:

1.可以把通过一个数组把不同的对象组合在一起。(参考数据类型存放的是地址值所以可以办到

2.用于方法参数的传递。(类似abstract的?)

类型判断:对象 instanceof 类。

参考类型转换总结:

子类向父类的转换可以自动进行,而父类向子类的转换则需要指明。

(强制转换也不行,变量声明是父类但利用多态性指向的是该子类,可以强转)

非访问控制符:

成员变量:类内方法体外的变量。

static:

实例变量(无static修饰的成员变量)

类变量(有static修饰的成员变量)

类变量只跟类变化。实例变量只跟对应对象变化

静态变量(类变量)具备以下特点:

随着类的加载而加载
优先于对象存在
被所有对象所共享
可以直接被类名调用
 

类变量和实例变量的区别是:

1,存放位置。

类变量随着类的加载而存在于方法区中。

实例变量随着对象的建立而存在于堆内存中。

2,生命周期:

类变量生命周期最长,随着类的消失而消失。

实例变量生命周期随着对象的消失而消失。

类方法(main方法就是类方法):

1.类方法只能直接访问类变量或方法参数,不能直接访问实例变量。(实例变量必须通过创建对象,通过对象的句柄访问

2.静态方法不能直接访问非静态方法(想访问必须向先创建该类的对象或自身的,再通过句柄访问)

final(修饰什么,什么就不可更改):

final修饰的类为最终类,不能被继承(不可修改)。

final 修饰的方法为最终方法,不能被覆盖(即继承之后,不能被子类修改)。

final 修饰的变量变为常量。(即赋值后,值无法改变)。

  abtract:

abstract修饰的类是抽象类,既有歇类中有些内容还没有定义完整,这样的类只能将类头部定义完整。抽象类一般只能做父类。(与final相克,不能同时修饰同一个类

修饰方法:只定义了方法头部,没有方法体。eg:abstract void tt ();

抽象类不一定有抽象方法,但含有抽象方法的类一定是抽象类。

如果子类没有实现抽象类中所有的抽象方法,那么子类要定义为抽象类。

作用:

抽象类的作用就是做抽象类:

接口:

格式: interface 接口名{}

接口中的方法体不给出方法体,是抽象方法,即都是public static 方法,接口中只允许定义常量。不允许定义变量,接口中的成员变量都是public static final 型的。

实现:

class 类名 implement 接口列表{

     类体

}

类实现接口意味着类要继承接口,然后再重写方法体。 一个类实现一个接口,如果该类不是抽象类,则必须实现接口中的每个方法,如果一个类同时实现多个接口,接口名之间必须用逗号隔开。

访问控制符

 内部类:

非静态内部类:

菲静态内部类在外部类中与外部类的方法处于等同位置。

格式:

class Outer {

     class Inner{}

}

非静态内部类不允许有任何静态声明。

静态内部类(创建静态内部类时,不用事先创建外部类的对象):

静态内部类只能直接访问外部类的静态成员,不能直接访问外部类的非静态成员,如一定要访问,则必须通过对象访问。

方法内部类:

把类定义在方法内,就叫做方法内部类,方法内部类的作用域与局部变量相同。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值