Java 接口 -17天 学习笔记

接口

  • 普通类: 只有具体实现

  • 抽象类: 具体实现和规范(抽象方法)都有!

  • 接口: 只有规范!自己无法写方法~专业的约束!约束和实现分离: 面向接口编程

  • 接口就是规范,定义的是一组规则,体现了现实世界中“如果你…则必须能…”的思想。如果你是天使,则必须能飞。如果你是汽车,则必须能跑。如果你好人,则必须干掉坏人;如果你是坏人,则必须欺负好人。接口的本质是契约,就像我们人间的法律一样。 制定好后大家都遵守。

  • OO的精髓,是对对象的抽象,最能体现这一 点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(比如c++. java. c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象。

声明类的关键字是class,声明接口的关键字是interface

package com.oop.Demo03;
//interfaca   接口
 interface UserService
{
    
    
		//接口中所有定义都是抽象的  默认隐藏了public abstract
		public abstract void method();
		
		void name (String name);
		
		void add (String buffer);
		void delete (String del);
		void update (String upd);
		void query (String que);
		
		//在接口中定义属性都默认常量 public static final
		public static final int year = 3;
		int age = 10;
		
}
/*作用  
1.约束
2.定义一些方法,让不同的人实现
3.都是 public abstract
4.都是 public static final的
5.接口不能实例化,因为根本没有构造器属于抽象的
6.interface可以多继承 必须要重写接口中的方法

*/

package com.oop.Demo03;

//类可以实现接口   implements  a implements b,必须要重写方法
//实现了接口就要重写完接口中所有的类
//利用接口实现多线程
//,TextService
public class UserServiveImf implements UserService,TextService
{
    
    

		@Override
		public void method()
		{
    
    
		//实现这个方法
		}

		@Override
		public void add(String buffer)
		{
    
    
		// 实现这个方法
		}

		@Override
		public void delete(String del)
		{
    
    
		
		}

		@Override
		public void update(String upd)
		{
    
    
		
		}

		@Override
		public void query(String que)
		{
    
    
		
		}

		@Override
		public void name(String name)
		{
    
    
		
		}

		@Override
		public void text()
		{
    
    
		
		}
  
}

package com.oop.Demo03;

public interface TextService
{
    
    
	 void text();
}

猜你喜欢

转载自blog.csdn.net/yibai_/article/details/114954486