learn-java

类与程序的基本结构

一个Java应用程序(也称为一个工程)是由若干个类所构成,这些类可以在一个源文件中,也可以分布在若干个源文件中

Java应用程序从主类的main方法开始执行。在编写一个Java应用程序时,可以编写若干个Java源文件,每个源文件编译后产生一个类的字节码文件。

类定义

Java语言是面向对象语言,它的源程序是由若干个类组成,源文件是扩展名为.java的文本文件。

类是Java语言中最重要的“数据类型”,类声明的变量被称作对象,即类是用来创建对象的模板。

类的实现包括两部分:类声明和类体。

类(主类,万物类)

主类(可以没成员变量,主函数调用万物对象完成功能)

万物类(自己的属性,自己的行为)

包(区分不同空间的类)

写类的目的是为了描述一类事物共有的属性和功能。

//类基本格式
class  类名{
	类体内容
}
//类的定义包括两个部分:类声明  和 类体
//其中:class是关键字,用来定义类。“class  类名”是类的声明部分,类名必须是合法的Java标识符。两个大括号以及之间的内容是类体。

类声明

class  类名
//以下是两个类声明的例子。
      class People {
         
      }
      class 植物 {
         
      }
//如:class People”和“class 植物”称作类声明;“People”和“动物”分别是类名。

class 类名 是类的声明部分,class是关键字用来定义类,类名是java标识符

给类命名时,遵守下列编程风格(这不是语法要求,但应当遵守): 1.如果类名使用拉丁字母,那么名字的首字母使用大写字母。 2.类名最好容易识别、见名知意。当类名由几个“单词”复合而成时,每个单词的首字母使用大写。

类体

类声明之后的一对大括号“{”,“}”以及它们之间的内容称作类体,大括号之间的内容称作类体的内容。

class 类名{
    //类体内容:
        变量声明//用来存储属性的值(体现对象的属性)
        方法的定义//方法可以对类中声明的变量进行操作,即给出算法(函数,体现行为)
}    

类体的内容由两部分构:一部分是变量的声明,用来刻画属性;另一部分是方法的定义,用来刻画行为功能。

class 类名{
    //类体内容:
        //变量声明:
    	成员变量=实例变量=实例=实例成员
        static 成员变量=类变量=静态变量
            
        //方法的定义:
            实例方法=[修饰符] 类型 方法名称1(参数){
                构造函数=方法名称1()
                局部变量
             }
            类方法=static 实例方法=static 类型 方法名称2(参数){
                构造函数=方法名称2()
                局部变量
            }
} 
class Lader { 
    float above;    //梯形的上底(变量声明)
    float bottom;   //梯形的下底(变量声明)
    float height;    //梯形的高(变量声明)
    float area;     //梯形的面积(变量声明)
    float computerArea() {          //计算面积(方法)
       area = (above+bottom)*height/2.0f;
       return area;
    } 
    void setHeight(float h) {        //修改高(方法)
       height = h;//set---get---上面的
    }
}

类使用

创建对象

创建一个对象包括对象的声明和为对象分配变量两个步骤。

对象的声明

一般格式为:

    类的名字   对象名字;
//如: 
XiyoujiRenwu zhubajie;

为声明的对象分配变量

使用new运算符和类的构造方法为声明的对象分配变量,并返回一个引用值给对象名称。即创建对象。如果类中没有构造方法,系统会调用默认的构造方法,默认的构造方法是无参数的,且方法体中没有语句。

对象名字 = new 类的构造方法(对象的构造参数)
zhubajie = new XiyoujiRenwu(); 

当用类创建一个对象时,类中的成员变量被分配内存空间,这些内存空间称作该对象的实体或对象的变量,而对象中存放着引用值

一个类创建的两个对象,如果具有相同的引用,那么就具有完全相同的实体。

class Point{ double x,y;
  Point(double x,double y){ 
    this.x=x;
    this.y=y;
   }
}
//使用Point类创建了两个对象p1,p2:
        Point p1  =  new Point (5,15);
        Point p2  =  new Point(8,18); 

使用对象

对象创建成功后,可以操作类中的变量和方法:

1.对象操作自己的变量(体现对象的属性)

​ 通过使用运算符“.” 对象操作自己的变量(对象的属性)。

2.对象调用类中的方法(体现对象的行为)

​ 对象创建之后,可以使用点运算符“.”调用创建它的类中的方法,从而产生一定的行为(功能)。

当对象调用变量时,是指调用分配给该对象自己的变量。

类中的方法可以操作成员变量;当对象调用方法时,方法中出现的成员变量就是指分配给该对象的那个变量。