• 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
    
    
    
    
    
  • 相关阅读:
    python中获取今天昨天和明天的日期
    Redis安装系统服务1073错误
    npm 安装删除模块
    git 远程服务器创建项目自动化部署、克隆推送免密码
    A20地址线科普【转载】
    fork 与 vfork
    /bin /usr/bin /sbin /usr/sbin 目录的作用
    Coreutils
    VMware 设置支持UEFI
    npm 发布包
  • 原文地址:https://www.cnblogs.com/huxdiy/p/3551387.html
Copyright © 2020-2023  润新知