Java数组、方法、类与对象

Java数组——

                  数组中的元素是通过下标来访问的

数据类型[ ] 数组名;   //或者: 数据类型 数组名[ ];
数组名 = new  数据类型 [ 数组长度 ];

      Java中可以将一个数组赋值给另一个数组:

int [] a1 = {1,2,3};
int [] a2;
a2 = a1;

 

Java方法——

 

访问修饰符 返回值类型 方法名(参数列表){
    方法体
}

                  1、访问修饰符:代表方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用,其他几种修饰符的使用我们会在后面章节中详细讲解。

                  2、返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void (代表无类型);如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值。

                  3、方法名:是方法的名字,必须使用合法的标识符。

                  4、参数列表:是传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。

                  5、方法体:方法体包含具体的语句,定义该方法的功能。

       根据方法是否带参、是否带返回值,可将方法分为四类:

                                                                  无参无返回值方法
                                                                  无参带返回值方法
                                                                  带参无返回值方法
                                                                  带参带返回值方法

 

calcSum方法用来计算两门课程的成绩总分:

public class PrintScore {
    public static void main(String[] args) {

        // 创建对象,对象名为a
        PrintScore a = new PrintScore();

        int rSum;  //设置一个int型变量,用来接收方法的返回值

        // 调用方法,传入两门课程的成绩
        rSum = a.calcSum(78,99);
        System.out.println("总分:"+ rSum);
    }

    /*
     * 功能:计算两门课程考试成绩的总分并输出总分
     * 定义一个包含两个参数的方法,用来传入两门课程的成绩
     */
    public int calcSum(int a, int b){
            int sum= a + b;
            return sum;
    }
}
       /* 方法名为calcSum,它的修饰符是public,它有两个参数int a和int b,
        * 在方法调用的时候必须传入这两个参数。它有一个int 型的返回值,所以在方法里,有一条语句return sum;
        * 用来返回sum的值,其中sum类型也为int 型。而在方法调用的时候,我们用一个int 型变量rSum来接收这个返回值。方法calcSum实现了将两门课程的总成绩算出并返回。
        */

         注意:

            调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应

            调用方法时,实参不需要指定数据类型

            当方法参数有多个时,多个参数间以逗号分隔

 

——方法重载:

                          一个类中,有一系列的方法具有方法名相同,但参数列表不同,方法的参数列表不同(参数的个数和参数类型的不同)

               在进行方法重载的时候需要遵循以下的规则:

                     1.在使用方法重载的时候,必须通过方法中不同的参数列表来实现方法的重载。如:方法的参数个数不同或者方法的参数类型不同。
                     2.不能通过访问权限,返回值类型和抛出的异常来实现重载
                     3.重载的方法中允许抛出不同的异常
                     4.可以有不同的返回值类型,只要方法的参数列表不同即可
                     5.可以有不同的访问修饰符

 

——参数与返回值:

         注意:

                    如果方法的返回类型为 void ,则方法中不能使用 return 返回值。

                    方法的返回值最多只能有一个,不能返回多个值。

                    方法返回值的类型必须兼容,也就是说如果返回值类型为 int ,则不能返回 String 型值

                    调用带返回值的方法时,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理

 

Java类与对象——

               

public class 类名{
//定义属性部分(成员变量)
属性1的类型 属性1;
属性2的类型 属性2;
...
//定义方法部分
方法1;
方法2;
...
}

        定义一个类,主要有三个步骤:

                  1、定义类名,用于区分不同的类。如下代码中 public class 后面跟的就是类名。class是我们声明类的关键字,类名后面跟上大括号,大括号里面就是我们类的一些信息。public我们会在后面详细讲解,大家先记着就行了。

                  2、编写类的属性。对象有什么,我们通过属性来表示。属性的定义我们是写在类名后面的大括号里,在定义属性时,要明确属性的类型。在一个类当中可以写一个或多个属性。当然也可以不定义属性。

                  3、编写类的方法。方法也是写在大括号里面。我们可以定义一个方法或多个方法,当然也可以不定义方法。

 

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

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

 

          构造方法

  •  每个类都有构造方法。
  •  如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认构造方法。
  •  在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。

 

        通过new关键字将类实例化成对象,而new后面跟的就是构造方法,

        于是可以知道new + 构造方法可以创建一个新的对象:

package com.shiyanlou;

public class People {
//属性(成员变量)有什么
    double height;     //身高
    int age;           //年龄
    int sex;       //性别,0为男性,非0为女性

    //构造函数,初始化了所有属性
    public People(double h, int a, int s){
        height = h;
        age = a;
        sex = s;
    }
}

//创建对象,调用我们自己定义的有参构造方法
People XiaoMing = new People(168, 21, 1);

1、构造方法的名称与类名相同,且没有返回值。

2、如果我们在定义类的时候没有写构造方法,系统会默认给我们生成一个无参构造方法,不过这个构造方法什么也不会做。

3、当有指定的构造方法时,系统都不会再为我们添加无参构造方法了。

4、构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法。

 

 

        对象

                        定义类的时候是不会为类开辟内存空间的,但是一旦创建了对象,系统就会在内存中为对象开辟一块空间,用来存放对象的属性值和方法。

public class NewObject {
    public static void main(String[] args) {
        People LiLei = new People(); //创建一个People对象LiLei

        LiLei.height =170;
        LiLei.age = 20;
        LiLei.sex = 1;

        LiLei.printBaseMes();
    }
}

 

posted @ 2018-05-03 16:52  回冬  阅读(382)  评论(0编辑  收藏  举报