java③

来源:互联网 发布:企业的域名 编辑:程序博客网 时间:2024/06/05 20:48
面向对象:★★★★★  
特点:
1:将复杂的事情简单化。 
2:面向对象将以前的过程中的执行者,变成了指挥者。  
3:面向对象这种思想是符合现在人们思考习惯的一种思想。 


在类中定义其实都称之为成员。成员有两种: 1:成员变量:其实对应的就是事物的属性。 2:成员函数:其实对应的就是事物的行为。


类与对象之间的关系?
类:事物的描述。
对象:该类事物的实例。在java中通过new来创建的


封装(private)使用:
private:私有,是一个权限修饰符。用于修饰成员。
私有的内容只在本类中有效。
注意:私有仅仅是封装的一种体现而已。


构造函数:构建创造对象时调用的函数。作用:可以给对象进行初始化。
创建对象都必须要通过构造函数初始化。
一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数构造函数。
如果在类中定义了指定的构造函数,那么类中的默认构造函数就没有了。
一般函数和构造函数什么区别呢?


构造函数:对象创建时,就会调用与之对应的构造函数,对对象进行初始化。
一般函数:对象创建后,需要函数功能时才调用。


构造函数:对象创建时,会调用只调用一次。
一般函数:对象创建后,可以被调用多次。


什么时候定义构造函数呢?
在描述事物时,该事物一存在就具备的一些内容,这些内容都定义在构造函数中。
构造函数可以有多个,用于对不同的对象进行针对性的初始化.
多个构造函数在类中是以重载的形式来体现的。
细节:
1,构造函数如果完成了set功能。set方法是否需要。
2,一般函数不能直接调用构造函数。
3,构造函数如果前面加了void就变成了一般函数。
4,构造函数中是有return语句的。


静态代码块。
随着类的加载而执行。而且只执行一次。
作用:
用于给类进行初始化。




static的特点:
1,static是一个修饰符,用于修饰成员。
2,static修饰的成员被所有的对象所共享。
3,static优先于对象存在,因为static的成员随着类的加载就已经存在了。 
4,static修饰的成员多了一种调用方式,就可以直接被类名所调用  。  类名.静态成员  。
5,static修饰的数据是共享数据,对象中的存储的是特有数据。
成员变量和静态变量的区别?
1,两个变量的生命周期不同。
成员变量随着对象的创建而存在,随着对象的被回收而释放。
静态变量随着类的加载而存在,随着类的消失而消失。
2,调用方式不同。
成员变量只能被对象调用。
静态变量可以被对象调用,还可以被类名调用。
3,别名不同。
成员变量也称为实例变量。
静态变量称为类变量。
4,数据存储位置不同。
成员变量数据存储在堆内存的对象中,所以也叫对象的特有数据.
静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据.
静态使用的注意事项:
1,静态方法只能访问静态成员。(非静态既可以访问静态,又可以访问非静态)
2,静态方法中不可以使用this或者super关键字。
3,主函数是静态的。 


多?态★★★★★(面向对象特征之一):函数本身就具备多态性,某一种事物有不同的具体的体现。?
?


体现:父类引用或者接口的引用指向了自己的子类对象。//Animal?a?=?new?Cat();?
多态的好处:提高了程序的扩展性。?


多态的弊端:当父类引用指向子类对象时,虽然提高了扩展性,但是只能访问父类中具备的方法,不可以访问子类中特有的方法。(前期不能使用后期产生的功能,即访问的局限性)?
多态的前提:?
?1:必须要有关系,比如继承、或者实现。??2:通常会有覆盖操作。??


多态的出现思想上也做着变化:以前是创建对象并指挥对象做事情。有了多态以后,我们可以找到对象的共性类型,直接操作共性类型做事情即可,
这样可以指挥一批对象做事情,即通过操作父类或接口实现。


类与类之间存在着继承关系,类与接口中间存在的是实现关系。  继承用extends  ;实现用implements ; 


继承的细节: 
 什么时候使用继承呢?  
当类与类之间存在着所属关系时,才具备了继承的前提。a是b中的一种。a继承b。狼是犬科中的一种。英文书中,所属关系:" is a "  
注意:不要仅仅为了获取其他类中的已有成员进行继承。 


接 口:★★★★★  
1:是用关键字interface定义的。  
2:接口中包含的成员,最常见的有全局常量、抽象方法。  
注意:接口中的成员都有固定的修饰符。 
 成员变量:public static final   
成员方法:public abstract   interface Inter{   public static final int x = 3;  public abstract void show(); } 
 3:接口中有抽象方法,说明接口不可以实例化。接口的子类必须实现了接口中所有的抽象方法后,该子类才可以实例化。否则,该子类还是一个抽象类。 
 4:类与类之间存在着继承关系,类与接口中间存在的是实现关系。  继承用extends  ;实现用implements ;  
5:接口和类不一样的地方,就是,接口可以被多实现,这就是多继承改良后的结果。java将多继承机制通过多现实来体现。   
6:一个类在继承另一个类的同时,还可以实现多个接口。所以接口的出现避免了单继承的局限性。还可以将类进行功能的扩展。 
 7:其实java中是有多继承的。接口与接口之间存在着继承关系,接口可以多继承接口。
0 0