1、方法:
package com.wyq.study;
public class Person {//[1]类名
//【2】创建属性
String name;
int age;
char sex;
//【3】创建构造方法
//①创建无参的构造方法
public Person(){
}
//②创建一个参数的构造方法
public Person(String name){
System.out.println(name+"正在唱歌");
}
public Person(String name,int age){
this.name = name;
//①这里的this指代本类中的属性,this.属性名,this可以省略不写
// this.eat(name, age);
System.out.println("程序进入了调用方法————————————————");
eat(age, name, sex);
//②this可以指代本来中的属性,this.属性名(),this可以省略不写,貌似this调用的是普通方法
age = age;
System.out.println("我叫"+name+"\t今年"+age+"岁了。");
}
public Person(String name,int age,char sex){
this(name);
/**③调用本类中的构造方法,要求:
* 1)必须放在第一句
* 2)必须放在构造方法中才行
*/
System.out.println(name+"正在做自我介绍,我叫"+name+"今年+"+age+"岁了,性别是:"+sex);
}
//【4】创建普通方法
public void eat(int age,String name,char sex){
/**
* ④当局部变量和成员变量名称相同时,使用this代表成员变量
*/
System.out.println(name+"今年"+age+"岁了,正在吃饭"+"我的性别是"+sex);
}
/**
* this关键字总结:
* ①当局部变量和成员变量名称相同时,使用this代表成员变量
* ②在构造方法中,使用this可以指代构造方法,要求:
* 1)必须放在放法中的第一句
* 2)必须放在构造方法中才行
* ③this可以指代本类中的属性,this.属性名,this可以省略不写
* ④使用this可以指代本类中普通方法,this.方法名(),this 可以省略不写
*
*/
}
2、方法的调用
package com.wyq.study;
public class TestPerson {
public static void main(String[] args) {
//创建对象 类名 对象名 = new 类名();
Person p = null; //在堆内存中开空间,将内部才能地址赋值给栈内存中的变量P来村塾
p = new Person();
//调用方法
p.eat(10,"李四", '女'); //成员方法使用对象去调用
//给对象赋值 对象名.属性名 = 值
p.name= "张三";
p.age = 18;
p.sex = '男';
p.name= "马六";
p.age = 30;
Person p2 = new Person("张三"); //构造方法使用new来调用
Person p3 = new Person("王五",18);
Person p4 = new Person("张三",18,'男');
/**
* 构造方法和成员方法的区别:
* 1、构造方法的方法名和类型必须相同
* 2、构造方法不用写void关键字,即使没有返回值也不用写void关键字
* 3、构造方法的调用通过new去实现,成员方法的调用必须通过创建对象,然后让对象去调用
* 4、构造方法中,可以创建一个参数的构造方法 ,可以创建两个参数的构造方法,甚至可以创建多个参数的构造方法,或者不带参数的构造方法
* 5、成员方法使用方法重载,在使用对象调用方法的过程中就必须要传递参数
* 6、构造方法创建对象时调用,每调用一次,创建一个对象,而成员方法可以被统一对象调用N多次
*/
/**
* 类与类之间运行是相互独立的,在程序运行时通过创建对象建立联系,通过方法调用进行信息交流
*
*/
}
}