面向对象三大特性:封装、继承、多态

封装:

封装:

把属性或方法使用private修饰符修饰之后,就叫做封装。

修饰符:

  • public 公开的 所有地方都可见的

  • protected 受保护 同一个包和他的儿子们可见的

  • default 默认的什么都不写的 他儿子们才能看到的

  • private 私有的 ,除此类之外都不可见的

实例:

/**
 * @author fei
 * 2021年9月18日上午9:22:01
 * 封装
 * public 公开的 所有地方都可见的
 * protected 受保护 同一个包和他的儿子们可见的
 * default 默认的什么都不写的 他儿子们才能看到的
 * private 私有的 ,除此类之外都不可见的
 */
public class FengZhuang {
		//封装了一个 类型为 复合类型 String的 变量,该变量的变量名字 是 name
		private  String name;
		
}

继承:

接口:

用interface 修饰的就是接口。

实例:

/**
 * @author fei
 * 2021年9月18日上午10:18:37
 * 这是一个接口
 */
public interface JieKou {
		public  void show();
}

接口中省略了abstract修饰符。

接口中只有抽象方法。

接口可以看成特殊的抽象类。

接口一般想要被使用,需要有普通类来实现。普通类实现接口的时间必须实现所有的抽象方法。

接口没有构造方法。


抽象类:

用abstract修饰的类。

实例:

/**
 * @author fei
 * 2021年9月18日上午10:33:57
 * 抽象类
 */
public abstract class ChouXiang {
	public abstract void show();
	public void showDJ() {
		System.out.println("黄梅戏!");
	}
}

抽象类种既可以使用普通方法,又可以使用抽象方法。

抽象类中不能省略abstract修饰符。

抽象类想要使用也需要被普通继承类实现。

抽象类可以被抽象类无限继承就是不实现。

抽象类也有构造方法。


普通类:

普通类就是平时使用的类。

 实例:

/**
 * @author fei
 * 2021年9月18日上午10:43:00
 * 普通类
 */
public class PuTongLei {
			
		public void show() {
			System.out.println("这是一个普通类!");
		}
}




多态

重写:

子类重写父类的方法。

父类相当于子类的模板。

子类想要调用父类的方法需要使用关键字super。

重载:

同一个类中方法名一样,但参数不同。

实例:

重写:

父类:

/**
 * @author fei
 * 2021年9月18日上午11:25:49
 *  爸爸类
 */
public class BaBa {
		public void show() {
			System.out.println("这是一个爸爸类。");
		}
}

子类:

/**
 * @author fei
 * 2021年9月18日上午11:26:53
 * 孩子类
 */
public class HaiZi extends BaBa {
		
		public void duyou() {
			System.out.println("孩子类独有的方法。");
		}
		public void show() {
			System.out.println("重写父类方法!");
		}
}

重载:

package com.hp.duotai;

/**
 * @author fei
 * 2021年9月18日上午11:39:13
 * 同一个类中 方法名一致,但内容不同 叫做重载
 */
public class ChouZai {
			
			
			/**
			 * @time: 2021年9月18日上午11:38:31
			 * @auth: fei
			 * @return:void
			 * @description:方法名:show ,内容 无
			 */
			public void show() {
				System.out.println("show");
			}
			
			/**
			 * @time: 2021年9月18日上午11:38:43
			 * @auth: fei
			 * @return:void
			 * @description:方法名:show,内容 String
			 */
			public void show(String name) {
				System.out.println(name);
			}
	
	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值