构造方法:
* 在创建对象的时候默认会调用构造方法来创建,在堆中进行存储,主要是对成员变量进行初始化 *** 作
* 语法:
* 修饰符:有4个,后面再讲(public、protected、[default]、private)
* 返回值:构造方法没有返回值
* 方法名:构造方法的名字必须和类名保持一致
* 参数列表:和普通方法一样
* 方法体:对成员变量进行初始化
*
* 注意:
* 1、当没有显示的声明构造方法的时候,系统会给你一个默认的不带任何参数的空构造器供你来创建对象
* 2、如果显示的声明了一个构造器,那么系统给你提供的空构造器就会被覆盖,这时候如果你还想使用空构造器来创建对象,
* 就必须显示的定义一个空构造器才能使用
* 3、一个类中可以有多个构造方法
*
* 重载:一个类可以有多个同名的方法,但是要求方法的参数列表不同
* 主要指三方面不同:
* 1、参数个数不同
* 2、参数类型不同
* 3、参数顺序不同
*
* 注意:
* 1、重载是发生在同一个类中的;
* 2、一般我们都需要构造方法的重载(当成员变量个数很多的时候,只需要对部分成员变量进行初始化的时候,就需要构造方法重载)
*
*/
public class Teacher {
//属性:成员变量
String name;
int age;
//定义一个空构造方法
public Teacher(){
System.out.println("空构造方法被调用了......");
}
//定义一个有参构造方法
public Teacher(String tname,int tage){
System.out.println("Teacher(String name,int age)构造方法被调用了......");
name = tname;
age = tage;
}
public Teacher(int tage,String tname){
}
public void show(){
}
public void show(String name,int age){
}
public void show(int age){
}
public static void main(String[] args) {
//创建对象
Teacher teacher1 = new Teacher();
teacher1.name = "张飞";
teacher1.age = 18;
System.out.println(teacher1.name);
System.out.println(teacher1.age);
Teacher teacher2 = new Teacher("关羽",20);
System.out.println(teacher2.name);
System.out.println(teacher2.age);
}
}
变量:
* 局部变量:
* 在方法内定义的变量称为局部变量
* 作用域:从变量的声明开始到方法的结束
* 注意:
* 1、局部变量没有初始化的时候,如果不使用的情况下,是不会报错的
* 2、局部变量在使用之前必须进行初始化
* 3、只能在当前方法中使用,出了方法是不能使用的
*
*
* 成员变量:(全局变量)
* 在方法外,类内定义的变量称为成员变量
* 作用域:整个类体内都可以访问
* 注意:
* 成员变量如果没有初始化的话,那么系统会根据它的类型默认进行初始化
* int--> boolean-->false String--->null
*
*/
public class VarDemo {
//属性:成员变量
int age = 10;
String name;
public void show(){
//局部变量
String name = "小鑫鑫";
System.out.println(name);
int a;
// System.out.println(a);
System.out.println(age);
}
public void test(){
System.out.println(age);
age = 20;
System.out.println(age);
int age = 30;
System.out.println(age);
}
public static void main(String[] args) {
//创建对象
VarDemo vd = new VarDemo();
System.out.println(vd.age);
// vd.show();
// System.out.println(vd.name); 错误的
vd.test();
System.out.println(vd.age);
// System.out.println(vd.name);
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)