Java_面向对象

07_面向对象

面向对象思想

一切客观存在的事物都是对象,万物皆对象。

任何对象,一定具有自己的特征和行为。

对象:属性,方法

对象

类的抽取

在一组相似或相同的对象中,抽取出共性的特征和行为,保留所关注的部分

类与对象的关系

类:定义了对象应具有的特征和行为,类是对象的模板

对象:拥有多个特征和行为的实体,对象是类的实例

实例变量与局部变量的区别
局部变量成员变量(实例变量)
定义位置方法或方法内的结构当中
默认值无默认值
适用范围从定义行到包含其结构结束
明名冲突不允许重名

方法重载

一个类中定义多个相同名称的方法

要求:

​ 1、方法名相同

​ 2、参数列表不同(类型、个数、顺序)

​ 3、与访问修饰符,返回值的类型无关

好处:屏蔽使用差异,灵活,方便

构造方法

类中的特殊方法,主要用于创建对象

特点:

​ 1、名称与类名完全相同

​ 2、没有返回值

​ 3、创建对象时,触发构造方法的调用,不可通过句点手动调用

注意:如果没有在类中显示定义的构造方法,则编译器默认提供无参的构造方法

如果手动添加有参的构造方法,则无参构造方法不在默认提供

对象创建过程 new Student();触发创建对象

​ 1、创建对象(调用构造方法)

​ 2、开辟存储空间

​ 3、初始化属性

​ 4、执行构造方法中的代码

​ 5、[将对象地址赋给变量]

​ 6、返回到构造方法调用位置

this关键字

类是模板,可服务于所有对象。

this是类中的默认引用,代表当前实例,当类服务于某个对象时,this指向这个对象

1、this调用实例属性,实例方法。例:this.name、this.say()

实例变量与局部变量重名时,用”this.”区分两者

class Student{
  String name = "Jack";
  public void sayHi(){
    String name = "Tom";
    System.out,println(name);       //输出jack
    System.out,println(this.name);  //输出Tom
  }
}

2、this调用本类中的其他构造方法。例:this(); this(实参);

/*
    在构造方法中,调用本类的其他构造方法,即可复用构造方法中的逻辑代码
*/
class Student{
  String name;
  int age;
  String sex;
  double score;

  public Student(String name,int age,String sex){
    this.name=name;
    this.age=age;
    this.sex=sex;
  }

  public Student(String name,int age,String sex,double score){
    this(name,age,sex); //调用有参构造方法
    this.score=score;
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值