java类的案例与介绍(setter/getter/this/supper)权限

案例:

封装一个狗类,属性有名字,年龄,品种,提供对外接口,通过接口才能访问属性和修改属性,修改年龄属性时需要验证合法性.有构造函数先给这些属性赋值

package heihei;

public class 狗类 {
	public static class dog{
		private int age;//私有化变量
		private String name;
		private String variety;
		dog(int age,String name,String variety){//有参函数
			this.age=age;//关键字this区别变量
			this.name=name;
			this.variety=variety;
		}
		void setAge(int age) {//setter函数设置私有属性
			if(age>0 && age<12) {
				this.age=age;
			}else {
				System.out.print("这不是正经的狗子");
			}
		}
		void setName(String name) {
			this.name=name;
		}
		void setVariety(String variety) {
			this.variety=variety;
		}
		int getAge() {//getter函数获取私有属性
			return this.age;
		}
		String getName() {
			return this.name;
		}
		String getVarity() {
			return this.variety;
		}
		public static void main(String[] args) {
			dog m=new dog(10,"狗肉","博美");
			System.out.println("年龄:"+m.getAge());
			System.out.println("名字:"+m.getName());
			System.out.println("品种:"+m.getVarity());
			m.setAge(15);//超过范围

		} 
	}
}

在这里插入图片描述

访问权限

在这里插入图片描述

setter和getter函数

问题:通常我们会把属性设置为私有的,那么我们怎么获取或修改这些私有的属性呢?

  1. 这时我们可以定义类内的公有函数,在这个公有函数里进行获取私有属性(类内没有权限),然后在类的外面调用这个函数来获取私有属性,设置私有属性也可以同样使用这种方法
  2. 一般我们把设置私有属性的函数叫setter,获取私有属性的函数叫getter

关键字this

  1. this是对象本身,谁调用类函数,就是谁
  2. 作用:当形参和成员变量重名是用this区分

关键字supper

  1. 当父类没有无参构造时,子类这时创建不了对象,可以在子类的构造函数中使用super调用父类的构造函数,这样子类的对象就可以创建
  2. super必须写在子类的构造函数第一行
  3. 当子类和父类有同名成员时,优先调用子类的,但可以使用super调用从父类继承过来的成员
  4. 子类从父类继承过来的私有变量证明
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王大兴的王兴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值