zoukankan      html  css  js  c++  java
  • Java 对象和类

    Java作为面向对象的语言。支持以下概念:

    • 多态
    • 继承
    • 封装
    • 抽象
    • 对象
    • 实例
    • 方法
    • 重载

    本节研究对象和类。

    • 对象:对象是类的一个实例。
    • 类:类是一个模板。

    下图中男孩、女孩是类,而具体的每个人是该类的对象。



    1. Java中的类

    通过上图创建一个简单的类来理解Java中类的定义:

    public class Dog{
        String breed;
        int size;
        String colour;
        int age;
        
        void eat(){
        }
        void run(){
        }
        void sleep(){
        }
        void name(){
        }
        
    }
    

    一个类可以包含以下类变量:

    • 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都在方法中,方法结束后,变量会自动销毁
    • 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中的方法、构造方法和特定类的语句块访问。
    • 类变量:类变量也声明在类中,方法体之外,但必须声明为static类型

    一个类可以有多个方法。



    2. 构造方法

    每个类都有构造方法。如果没有显式地为类构造方法,Java编译器将会为该类提供一个默认构造方法。

    创建一个对象的时候,至少调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法

    public class Puppy{
        public Puppy(){
            
        }
        public Puppy(String name){
            // 这个构造器只有一个参数:name
        }
    }
    


    3. 创建对象

    对象是类创建的。用关键字new来创建对象

    • 声明:声明一个对象,包括对象名称和对象类型。
    • 实例化:使用关键字 new 来创建一个对象。
    • 初始化:使用 new 创建对象时,会调用构造方法初始化对象。
    public class Puppy{
        public Puppy(String name){
            // 这个构造器仅有一个参数:name
            System.out.println("小狗的名字是:" + name);
        }
        public static void main(String[] args){
            Puppy myPuppy = new Puppy("tommy");
        }
    }
    

    编译、运行:

    小狗的名字是 : tommy
    


    4. 访问实例变量和方法

    通过已创建的对象来访问成员变量和成员方法,如下所示:

    /* 实例化对象 */
    Object referenceVariable = new Constructor();
    /* 访问类中的变量 */
    referenceVariable.variableName;
    /* 访问类中的方法 */
    referenceVariable.methodName();
    


    5. 源文件声明规则

    当在一个源文件中定义多个类,并且还有import语句和package语句时,特别注意这些规则。

    • 一个源文件只能有一个public类
    • 一个源文件可以有多个非public类
    • 源文件的名称和public类的类名保持一致
    • 如果一个类定义在某个包中,那么package语句应该在源文件的首行
    • 如果源文件包含import语句,那么应该放在package语句和类定义之间。如果没有package语句,那么import语句应该在源文件中最前面
    • import语句和package语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明

    类有若干种访问级别,并且类也分不同的类型:抽象类和final类等。

    除了上面几种,还有特殊的类。如:内部类、匿名类。



    6. Java包

    包主要用来对类和接口进行分类。



    7. import语句

    在Java中,如果给出一个完整的限定名,包括包名、类名,那么Java编译器很容易定位到源代码或者类。

    例如:载入 java_installation/java.io路径下的所有类

    import java.io.*
    
  • 相关阅读:
    在Android模拟器(BlueStacks)中调试录音应用【20121221】
    一路来的脚印_停第二念【20130109】
    Office集锦_Word_禁止在粘帖内容前后添加空格【201318】
    Libgdx使用过程中在Android环境下遇到的各种错误提示的解决【2012112】
    童真趣语【20121217】
    【转】Android中的资源分析、读取【2012113】
    Office集锦_Word_禁止拼写检查【201318】
    BlueStacks中用户自己的SdCard的位置【2012116】
    Eclipse+BlueStacks调试Android应用_补充篇【20121030】
    The Power of H3D2 ! 截图,视频!
  • 原文地址:https://www.cnblogs.com/keye/p/15161560.html
Copyright © 2011-2022 走看看