Java:类与对象

类与对象

1.类和对象的区别:

类是对对象特征的概括,是泛例;对象是一个具体的实例。

2.类的定义+构造方法

public class Person {
    private String name;
    private char sex;
    private int age;
   
    public Person(){//无参构造方法
    }
    public Person(String name,char sex,int age){
        this.name=name;
        this.sex=sex;
        this.age=age;
    }
}

注意! 如果编写一个java类时没有添加无参构造方法,那么编译器会自动添加无参构造方法,但是如果编写时添加了有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法。
所以这边建议,不管有无含参构造,都自己定义一个无参构造方法。

构造方法的嵌套
如果要在构造方法里面调用另一个构造方法(方法重载
注意!

  1. Java规定,在一个构造方法中用this调用另一个构造方法的语句必须放在大括号内的第一句。
  2. 多个构造方法之间是重载的关系,系统会根据this()括号中的参数列表自动调用相应的构造方法。
public Person_up(String name,int age){
        this.name=name;
        this.age=age;
        this.id=count++;
    }
    public Person_up(String name,char sex,int age){
        this(name,age);
        this.sex=sex;
    }

3.对象的使用

一旦通过类new一个变量,会先访问类对成员变量的操作,再访问构造方法

 Person p1=new Person();
 //先访问
 //private String name;
 //private char sex;
 //private int age;
 //再访问 public Person(){//无参构造方法}
 Person p2=new Person("abc",'G',20);

4. 包含单个对象和多个对象程序如何操作的:P103,104
5. 多个对象指向相同(地址相同):P105
6. 成员变量与局部变量:成员变量是类里面方法之外的,局部变量是方法内的,包括调用方法参与方法的形参变量。
在这里插入图片描述

7.private

在这里插入图片描述
private的使用关键就在于他的作用范围只能在它所属的那个类。当用该类定义的对象出现在其他类中,不能直接对对象中的成员变量进行操作,只能通过该类中的方法对对象中的成员变量进行操作。

 Person p1=new Person();
 //,name的修饰符为private,所以p1.name="hello"这样写是错误的
 p1.setName("hello");
 //setName是Person对象的一个方法

8.this

当出现成员变量与局部变量重名时,this可以用于指代成员变量
当成员变量与局部变量(方法的形参)重名,重名的那个变量就近指代形参(局部变量)。不重名的话就还是成员变量。

 public void setSex(char sex){
        this.sex=sex;
    }

9.封装

在这里插入图片描述

posted on 2022-01-21 21:34  不依法度  阅读(5)  评论(0编辑  收藏  举报

导航