JAVA OOP 基础知识提纲

   OOP:
      面向对象: 认识事物的一个过程,是整体(特征/行为)
      认识事物的方式.人类认识事物的自然思维习惯。
      
      对象及类
      对象是实实在在具体存在的东西,主要是从两个角度(行为,特征)去观察
      类:是一组具有相同属性和行为的对象集合。类是抽象的概念,不是具体的。
      类与对象的关系:  
          对象是类的实例(具体化),类是对象的抽象.
      
       对象之间的关系: 
           消息的传递(方法的调用).

       对象的特征:
             封装:对象的属性,行为包裹在一起。有利于信息的隐藏.
             继承:子类继承父类非私有的属性和方法。
             多态:相同的行为有不同的表现(实现)形式.(通过继承、接口与实现的形式来实现多态)

  类:
      类的定义:
           语法:[访问修饰符] class 类名 {
            }  
            注意:如果访问修饰符为public时,则Java程序的文件名要与类名保持一致。
          组成:属性+方法
               根据属性的可变性将属性分为组件属性和状态属性
               组件属性:不可变,通过常量的形式来实现。
                        常量的定义: final 数据类型 常量名(字母大写)=值
               状态属性: 可变,通过变量的形式来实现。
               
               方法: 普通的方法。
                     构造函数: 方法名要与类名保持一致.
                               构造函数没有任何返回类型。
                               通过构造函数来初始化类中的属性。
                               如果构造函数重载了,则需要显性定义构造函数. eg:Student stu=new Student();
                                                                            public Student(){}
               用来定义属性和方法的访问修饰符:
                     public:所有的地方都可以访问属性和方法         
                     private 只局限于类本身,当前类能访问。Student stu= new Studnet(); stu.userName; 
                     protected 当前包所在的类能访问。子类能访问(从继承的角度)。
                     默认(default) 在同一个包中能访问.  


              特殊实例:this 代表着当前类的实例。
              
              类的关系:(我们自己写的类可以视为自定义数据类型)
                    has a :一个类的变量作为另外一个类的属性
                          A,B 类
                          public class A {
                                B b;
                           }
                    is  a:是继承的关系。 
             命名习惯:   
             
             类名: 首写字母大写,单词之间大写(public class Student{})
             方法名,变量: 首写字母小写,单词之间大写 (eg:String studentName)
             常量:所有字母大写.

  继承:
          继承的实现 extends
          public class MaleStudent extends Student{
           }
          注意:父类的抽象方法在子类中必须实现。
          父类与子类的关系
           1)子类调用父类的构造函数.
              super() 调用父类的构造函数
              super.属性
              super.方法();
              super代表着父类.
           2)访问修饰符   
              私有的属性和方法不会被子类继承.
          
           3)方法修饰符
             static :静态方法只能调用静态方法和静态属性,但是 主方法main除外.
             
             final: 修饰的方法不能被重写,修饰的类不能被继承.
    
             abstract: 用来修饰抽象方法和抽象类
                       抽象类不能被实例化(不能使用new运算符)
                       抽象方法必须要在子类中实现.               
        多态:可以通过继承关系来实现多态.

    问题:
        super的应用.
        动态绑定:是一种做法,将子类的实例赋给父类定义的变量
                             将实现类的实例赋给接口定义的变量

        

    异常:
try catch finally throw throws 数组: 1 什么是数组: 2 数组的定义,初始化,赋值,遍历 常用的类: javadoc 基本数据类型对应的包装类(包装类与基本数据类型的相互转换) String与StringBuffer 日期格式化(Date,SimpleDateFormat) 集合 :
1: 集合框架 2: 常用集合类操作 ArrayList,HashSet,HashMap,Properties 常用算法,比较器 :排序,比较等. 3:带泛型的集合. I/O:
字节流 字符流 对象流 javaBean(VO): 反射: 1)获得Class对象 2)找构造方法,并动态的实例化 3)找方法,并动态调用方法. 多线程:
1)多线程用在什么地方(什么时候使用). 2)多线程如何实现 a)继承 Thread b)实现接口 RunAble 3)如何启动线程 start(); 实现接口 RunAble的线程不能直接调用,需要借助Thread net: 1)tcp 2)udp 3)URL



原文地址:https://www.cnblogs.com/huxdiy/p/3551387.html