黑马程序员技术交流社区

标题: 面向对象的一些小概念 [打印本页]

作者: wxf468907066    时间: 2016-3-23 23:30
标题: 面向对象的一些小概念
关键字:
         private:* B:private关键字特点
                 * a:是一个权限修饰符
                  * b:可以修饰成员变量和成员方法
                * c:被其修饰的成员只能在本类中被访问
         A:构造方法概述和作用
                * 给对象的数据(属性)进行初始化
         B:构造方法格式特点
                * a:方法名与类名相同(大小也要与类名一致)
                * b:没有返回值类型,连void都没有
                * c:没有具体的返回值return;
        * B:构造方法注意事项
                * a:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
                * b:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。
        * 重载:方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表
        A:static关键字的特点
                * a:随着类的加载而加载
                * b:优先于对象存在
                * c:修饰的类被所有对象共享
                * d:可以通过类名调用
                        * 其实它本身也可以通过对象名调用。
                        * 推荐使用类名调用。
                        * 静态修饰的内容一般我们称其为:与类相关的,类成员
        * B:static的注意事项
                * a:在静态方法中是没有this关键字的
                        * 如何理解呢?
                                * 静态是随着类的加载而加载,this是随着对象的创建而存在。
                                * 静态比对象先存在。
                * b:静态方法只能访问静态的成员变量和静态的成员方法
                        * 静态方法:
                                * 成员变量:只能访问静态变量
                                * 成员方法:只能访问静态成员方法
                        * 非静态方法:
                                * 成员变量:可以是静态的,也可以是非静态的
                                * 成员方法:可是是静态的成员方法,也可以是非静态的成员方法。
                        * 简单记:
                                * 静态只能访问静态。
        **静态变量和成员变量的区别
                * A:所属不同
                        * 静态变量属于类,所以也称为为类变量
                        * 成员变量属于对象,所以也称为实例变量(对象变量)
                * B:内存中位置不同
                        * 静态变量存储于方法区的静态区
                        * 成员变量存储于堆内存
                * C:内存出现时间不同
                        * 静态变量随着类的加载而加载,随着类的消失而消失
                        * 成员变量随着对象的创建而存在,随着对象的消失而消失
                * D:调用不同
                        * 静态变量可以通过类名调用,也可以通过对象调用
                        * 成员变量只能通过对 象名调用
        * A:格式
                * public static void main(String[] args) {}
        * B:针对格式的解释
                * public 被jvm调用,访问权限足够大。
                * static 被jvm调用,不用创建对象,直接类名访问
                * void被jvm调用,不需要给jvm返回值
                * main 一个通用的名称,虽然不是关键字,但是被jvm识别
                * String[] args 以前用于接收键盘录入的
        * A:代码块概述
                * 在Java中,使用{}括起来的代码被称为代码块。
        * B:代码块分类
                * 根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块(多线程讲解)。
        * C:常见代码块的应用
                * a:局部代码块
                        * 在方法中出现;限定变量生命周期,及早释放,提高内存利用率
                * b:构造代码块 (初始化块)
                        * 在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造                        方法前执行
                * c:静态代码块
                        * 在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一                        次。
                        * 一般用于加载驱动
        * A:继承(extends)
                * 让类与类之间产生关系,子父类关系
        * A:继承的好处
                * a:提高了代码的复用性
                * b:提高了代码的维护性
                * c:让类与类之间产生了关系,是多态的前提
        * B:继承的弊端
                * 类的耦合性增强了。       
                * 开发的原则:高内聚,低耦合。
                * 耦合:类与类的关系
                * 内聚:就是自己完成某件事情的能力
        * A:Java中类的继承特点
                * a:Java只支持单继承,不支持多继承。(一个儿子只能有一个爹)               
                * b:Java支持多层继承(继承体系)
        * A:继承的注意事项
                * a:子类只能继承父类所有非私有的成员(成员方法和成员变量)
                * b:子类不能继承父类的构造方法,但是可以通过super(马上讲)关键字去访问父类构造方法。
                * c:不要为了部分功能而去继承
        * B:什么时候使用继承
                * 继承其实体现的是一种关系:"is a"。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2