OOP--面向对象

第三章 JAVA面向对象

第一节:面向对象的基本概念(面向对象和面向过程的区别)
第二节:类与对象 
(类和对象的区别)
第三节:方法

  3.1 方法的定义及简单使用
  3.2 方法的值传递和引用传递

  3.3 方法的重载

    方法的重载,参数个数不一样,参数的类型不一样。(返回值类型不一样,不算重载,直接会报错的  会说方法重名) 

    http://blog.java1234.com/blog/articles/169.html

  3.4 static 静态方法与普通方法

第四节:构造方法,this关键字  

  http://blog.java1234.com/blog/articles/175.html
第五节:访问控制权限及package import关键字

  主要有 private(私有), package(包访问权限),protected(子类访问权限),public(公共访问权限)

  

 
第六节:内部类
第七节:代码块
第八节:String类

  http://blog.java1234.com/blog/articles/182.html

第九节:类的继承

  定义:子类能够继承父类的属性和方法;注意点:Java中只支持单继承;   私有方法不能继承;

  2,方法重写    3,对象实例过程以及super关键字

    http://blog.java1234.com/blog/articles/187.html

第十节:final 关键字

  使用final声明的类不能被继承;

  使用final声明的方法不能被子类覆盖;

  使用final声明的变量不能被修改,即为常量;
第十一节:抽象类

  1,包含一个抽象方法的类是抽象类;

  2,抽象类和抽象方法都要用abstract关键字修饰;

  3,抽象方法只需要声明而不需要实现;

  4,抽象类必须被子类(假如不是抽象类)重写抽象中的全部抽象方法;

  5,抽象类不能被实例化;
第十二节:接口
(接口和抽象类的区别)

  接口定义:一种特殊的“抽象类”,没有普通方法,由全局常量和公共的抽象方法所组成;

  注意点:由于接口里的方法都是抽象的,所以abstract可以省略。先继承,后实现接口。接口可以继承多个接口。

  http://blog.java1234.com/blog/articles/190.html
第十三节:Java面向对象中的多态性

  Java中的多态性表现:

  1,方法的重载和重写;

  2,可以用父类的引用指向子类的具体实现,而且可以随时更换为其他子类的具体实现;

  对象的转型:

  向上转型:子类对象->父类对象 安全

  向下转型:父类对象->子类对象 不安全

  http://blog.java1234.com/blog/articles/191.html
第十四节:Object 类

  Object类的常用方法

  1,public String toString() 返回该对象的字符串表示。

  2,public boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”

 第十五节:instanceof关键字
第十六节:匿名内部类
第十七节:包装类
第十八节:设计模式
(单例模式)

/*这里我们构造方法私有 这样就保证了在外部是无法来实例化对象;
        然后我们先在内部定义一个静态常量对象,然后再写一个static方法 来返回这个对象,这样就保证是一个对象了;*/
public class Singleton {

    /**
     * 构造方法私有
     */
    private Singleton(){
        
    }
    
    private static final Singleton single=new Singleton();
    
    /**
     * 获取实例
     * @return
     */
    public static Singleton getInstance(){
        return single;
    }
}


------------------------------------------------------------------

/*饿汉式是先定义实例的 而懒汉式是先定义引用,当第一次调用getInstance的时候 进行对象实例化操作;
当然这里我们考虑到多并发的情况 多个线程同时调用这个方法的时候,会出现问题,所以我们加了同步锁 synchronized 来保证
同一时刻只有一个线程进入方法*/
public class Singleton2 {

    /**
     * 构造方法私有
     */
    private Singleton2(){
        
    }
    
    private static Singleton2 single=null;
    
    /**
     * 获取实例
     * @return
     */
    public synchronized static Singleton2 getInstance(){
        if(single==null){
            System.out.println("第一次调用");
            single=new Singleton2();
        }
        return single;
    }
}
View Code

   Java设计模式——工厂设计模式

   http://www.cnblogs.com/zhouqiang/archive/2012/07/20/2601365.html

(经典面试题,后续再补充。。。)

 Java面向对象三大特性及作用;

封装:我们可以类,类里有方法,属性,可以封装很多功能 仅仅对外暴露一些接口,来实现模块化,组建化,和安全性;

 继承:Java中的类可以继承,类似子女可以继承父母的东西;来实现可扩展;

 多态:Java中的父类接口可以指向子类实现的引用;这个我们后面通过实例详细讲解;

 

重载和重写;

方法的重载,参数个数不一样,参数的类型不一样。(返回值类型不一样,不算重载,直接会报错的  会说方法重名) 

 

 

 

 

posted @ 2017-03-14 12:15  SKYisLimit  阅读(133)  评论(0)    收藏  举报