类,方法,抽象方法,接口

类 从定义说是 因为在java中万物皆对象,所以 class 类 是对同一类事物的抽象  例如:狮子,老虎  都是动物  动物就是一个类。

类是同类型东西的概念,是对现实生活中事物的描述。定义类就是在描述事物,就是在定义属性(变量) 和方法(函数)

类中可以声明属性,方法,构造器。属性(变量)分为:实例变量,局部变量。

实例变量:用于声明对象的结构,在创建对象的时候分配内存。在堆中分配 作用于整个类中。有默认值,不初始化也能参与运算。

局部变量:在栈中分配作用于方法或语句中,必须初始化,有值才能运算

public class Demo07(){

 public  static void main(String[] args){ 

   Point p1= new Point();

   p1.x=3;

   p1.y=4;

   Point p2 = new Point();

   p2.x=1;

   pw.y=2;

 }

}

class Point(){

  int x;

  int y;

}

方法中声明的叫局部变量 例如: p1 p2

把类的衍生类当做基础类做处理的过程叫做“向上造型”(upcasting)其中“cast”(造型)是指根据一个现成的模型创建。

而“up”(向上)表明继承的方向是从上面来的,即基础类位于顶部而衍生类在下方展开。所以根据基础类进行造型就是一个从上面继承的过程,即“upcasting”

方法 代表“完成某事的途径”,其决定了一个对象能够接收到的信息。 例如:对象小明  小明在喝水。

方法:一个算法逻辑功能的封装,一般是完成一个业务功能 如:登陆系统等 简单说 方法是动作

方法的调用有两种方式:1.对象引用调用2 类名调用(即静态类)

假设有对象X

int  x = a.f()

像这样调用一个方法通常叫做:“向对象发送一条消息”,其中消息是f 对象是a。面向对象的设计通常简单的归纳为 “向对象发送消息”

抽象方法属于一种不完整的方法,只含有一个声明没有方法主体。语法为 abstract  void x();

抽象类是将拥有共同方法和属性的对象取出来,提取后设计一个更加通用更加大众化的类。

 设计程序时我们都希望基础类只为自己的衍生类提供接口,也就是说,我们不想其他任何人实际创建基础类的一个对象,而是向上造型以便使用使用他们的接口。

为了达到这个目的,需要把那个类变成抽象的。

编译器会阻止创建一个抽象类的对象,只能去继承来使用。

抽象类主要用来进行类型隐藏。

不能为抽象类创建一个实例,例如:

test是一个抽象方法,如果创建其的一个实例就会报错

 如果抽象类中有抽象方法,另一个类继承了这个抽象类就必须实现其抽象方法。

如果不实现那么这个类也是抽象类,例如:

test没有实现继承类的抽象方法报错。

如果test是抽象类,就不会报错。

 抽象类 可以有非抽象的方法 而接口所有的方法都必须是抽象的

接口中所有方法都必须是抽象方法,不然报错。

 

接口:规定了可以对一个特定对象发出那些请求,用户操作接口 调用方法而不是直接访问实体对象。这样就保证了数据的隐蔽性,即用户只需调用不需了解方法的实现。

所以对象的属性一般都是private修饰符,这样数据不能被外部直接看到。保证了数据的安全性

接口将抽象类的概念更延伸了一步,它完全禁止了所有函数的定义。接口一种非常有效和常用的工具

原文地址:https://www.cnblogs.com/zjf6666/p/6429443.html