2021-06-09

面向对象进阶

要点:

类的成员变量和类变量的区别:

类的成员分为属性和方法,属性其实就是类的成员变量,也称为全局变量,除了类的成员变量外,类的方法也可以声明变量,我们称局部变量。
成员变量分为类属性和实例属性两种,未加static修饰符的就是实例属性,代表该类的每个对象都拥有该属性;加了static修饰的属性,则为类属性,属于类所以,整个项目仅此一份,属于共享使用。

this关键字和方法调用:

在类的定义时通过this关键字可以访问到该类的实例属性,this其实就一个指向当前类的对象的地址。
最大的作用:让类中的一个方法访问该类中的另一个方法或实例成员变量。
注意:当成员变量和局部变量重名时,为了区分,成员变量使用时加上this关键字。

this不能和static静态关键字一起使用,
static修饰的成员不属于任何对象所以,而属于类所有。

类的成员封装:

封装是面向对象三大特征之一,封装的主要意思:
将该隐藏的隐藏,该开放的开发。

封装的意义:
目的是提高项目中属性或方法的安全性,隐藏内部实现细节。
目的:

  1. 隐藏类的实现细节
  2. 让使用者能通过事先预定的方向访问数据
  3. 可以对数据进行检查提高数据的可用性
  4. 便于修改,提高代码的可维护性

类中的静态方法和静态代码块

标题静态方法和静态代码块:

类包括加载和实例化两个阶段,当一个类被加载至JVM中,静态成员会被初始化,被static修饰的成员即为静态成员。
静态成员包括:静态代码块·静态属性和静态方法。
静态成员不属于某个对象,仅属于静态成员所在成员的类,整个项目中是公用的,仅此一份。

注意:
在静态环境中是不能直接访问到实例成员的,应为实例成员是属于对象所有,而static修饰的静态成员的是直接归属类所有。

练习代码:

public class fate {
	private String name;
	private String sex;
	private int age;
	public void setName(String name){
		System.out.println(name);
	}
	public void setSex(String sex){
		if(sex != "男" && sex != "女"){
			sex = "男";
			System.out.println(sex);
			return ;
		}else if(sex == "男"){
			sex = "男";
			System.out.println(sex);
			return;
		}else {
			sex = "女";
			System.out.println(sex);
			return;
		}
	
	}
	public void setAge(int age){
		System.out.println(age);
	}
}
public class fgo {

	public static void main(String[] args) {
		fate r = new fate();
        r.setName("张三");
        r.setSex("男");
        r.setAge(19);
	}

}
public class Test {
    private String zymc;
    private String zybh;
    private int zynx;
    public void fangFa1(String zymc){
    	System.out.println(zymc);
    }
    public void fangFa2(String zybh){
    	System.out.println(zybh);
    }
	public  void  fangFa(int zynx){
		if(zynx < 0){
			zynx = 0;
			System.out.println(zynx);
			return;
		}else if(zynx > 60){
			zynx = 60;
			System.out.println(zynx);
			return;
		}else{
			System.out.println(zynx);
		}
   
	}
	
}
public class Text1 {
	 public static void main(String[] agrs){
		 Test t = new Test();
		 t.fangFa1("计算机科学与技术");
		 t.fangFa2("J001");
		 t.fangFa(70);
	 }
}

注意:作业代码的实现要分开进行编写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值