成员变量、局部变量、类的构造函数 Java

一、成员变量

1、何为成员变量?

成员变量指的就是类的属性

示例:

public class User {

	public String username;
	public String password;
	public int age;
	public String nickname;
	public boolean gender;
	double height;
	char firstname; //以上均为类的属性 -- 成员变量
	
}

2、何为成员变量的默认值?

示例:

public class User {

	public String username;
	public String password;
	public int age;
	public String nickname;
	public boolean gender;
	double height;
	char firstname;
	
	public void study() {
		System.out.println("我的名字是"+ username + ", 我今年"+ age 
				+"岁了,我的密码就不告诉你了,我的昵称是"+ nickname + ",我的性别是"+ gender 
				+ ",我的身高是"+ height +",我的姓氏是"+ firstname);
	}
	
	public static void main(String[] args) {
		study();
        //我的名字是null, 我今年0岁了,我的密码就不告诉你了,我的昵称是null,我的性别是false,我的身高是0.0,我的姓氏是 
		
	}
	
}

成员变量存在默认值,若成员变量未被赋值,则输出默认值,如上 示例 study() ; 默认值根据类属性的类型不同而不同

基本数据类型:整型:默认值是0, 浮点数据:默认值是0.0
                         boolean:默认值是false,char类型默认值是 ' '
引用数据类型(对象): 默认都是null类型

二、局部变量

1、何为局部变量?

定义在函数内部的变量叫做局部变量,局部变量必须先初始化后使用

示例:

public static  void study() {
	int a;
	System.out.println(a); //报错 a 未初始化
	int b = 1;
        System.out.println(b); // 1
}


三、类的构造函数(方法)

1、构造函数的书写规则:

访问修饰符  类名称() {
            初始化属性
        }

示例:

public User(String _username, String _password, int _age, String _nickname, boolean _gender, double _height, char _firstname) {
		username = _username;
		password = _password;
		age = _age;
		nickname = _nickname;
		gender = _gender;
		height = _height;
		firstname = _firstname;
	}

2、构造方法的规则:

        1、构造方法目的是为了初始化对象的属性。
        2、构造函数的名称必须和类名称保持一致。
        3、构造函数不需要写返回值类型
        4、构建对象,new 后面调用就是类的构造函数

示例:

User u2 = new User("刘六", "1213", 16, "帅哥刘", false, 200, '刘');
u2.study();//我的名字是刘六, 我今年16岁了,我的密码就不告诉你了,我的昵称是帅哥刘,我的性别是false,我的身高是200,我的姓氏是刘


        5、当类被创建成功,如果没有构造函数,JVM会默认生成一个无参的构造,一定注意:如果
            我们自己已经在类中定义一个构造函数,此时JVM将不再自动生成无参的构造函数,
            如果这个调用无参的构造,需要自己创建这个无参的构造方法。

示例:

//有参
public User(String _username, String _password, int _age, String _nickname, boolean _gender, double _height, char _firstname) {
		username = _username;
		password = _password;
		age = _age;
		nickname = _nickname;
		gender = _gender;
		height = _height;
		firstname = _firstname;
	}
	
// 无参
public User() {
	
}


        6、一般在定义一个java类中,建议实现一个无参构造和全参构造,其他的根据情况来定义

四、this关键字

this 自己的意思,当类中出现了this,此时this指向该类,当使用该类实例化对象的时候, this指向实例化的对象。
示例:

public class User {

	public String username;
	public String password;
	public int age;
	public String nickname;
	public boolean gender;
	double height;
	char firstname; 

public User(String username, String password, int age, String nickname, boolean gender, double height, char firstname) {
		this.username = username;
		this.password = password;
		this.age = age;
		this.nickname = nickname;
		this.gender = gender;
		this.height = height;
		this.firstname = firstname;
	}
	
}

五、类的成员

类的成员:
    属性
    构造函数
    方法
    静态代码块:主要用来初始化类运行时的必须资源。
    构造代码块:主要用来初始化类运行时的必须资源(一般不怎么使用)。
    类成员
    类方法

 

六、static关键字

对象的初始化顺序问题

    当我们调用构造函数构造的对象的时候,首先被static修饰属性会执行,
    然后静态代码块开始执行,
    之后正常属性开始运行,最后才是构造函数

  static关键字  

    static关键字一般用来修饰变量或者方法
    一旦变量被static修饰,该变量就会变成静态,首先被加载的静态区!!static修饰的变量在内存有且只能有一份
    如果方法被static修饰,该方法就属于类的方法,不再是对象方法。
    类名称.方法名称();

面向对象专业术语
    OO(Oriented Object):面向对象
    OOP(Oriented Object Programming):面向对象的编程
    OOA(Oriented Object Analysis):面向对象的分析
    OOD(Oriented Object Design):面向对象的设计
    OOT(Oriented Object Test):面向对象的测试

    
        

    


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值