当前位置: 代码迷 >> Java相关 >> Java从零开始学十一(类跟对象)
  详细解决方案

Java从零开始学十一(类跟对象)

热度:88   发布时间:2016-04-22 20:40:39.0
Java从零开始学十一(类和对象)

一、面象对象

二、什么是类

我肯定说,不知道、不清楚。

简单讲类是java中的基本单元,类是具有相同特性和行为的对象集合

三、类的定义

3.1、类的定义

class 类名称{
数据类型  属性 ;
….                           
 
public 返回值的数据类型 方法名称(参数1,参数2…){
    程序语句 ;    
     [return 表达式;]
}
}
 

3.2、类包含:属性和方法(行为)

package com.pb.demo2;/* * 人类 */public class Person {   //Persion为类名    /*     * 属性,name,sex,age     */            public String     name;     //名字            public String     sex ;        //性别            public int         age;        //年龄                        /*             *方法(行为)              */            //吃饭            public void eat(){                System.out.println("吃饭");            }            //工作            public void work(){                System.out.println("工作");            }}

 四、创建对象

对象是类的实例

package com.pb.demo2;public class PersonTest {    public static void main(String[] args) {        //创建Person类的对象        Person person=new Person();        //调用Person类的方法        person.eat();        person.work();    }}

五、有参数的方法

package com.pb.demo2;/* * 人类 */public class Person {   //Persion为类名    /*     * 属性,name,sex,age     */            public String     name;     //名字            public String     sex ;        //性别            public int         age;        //年龄                        /*             *方法(行为)              */            //吃饭            public void eat(String name){   //传入一个String类型参数                System.out.println(this.name+"邀请"+name+"一起吃饭");            }            //工作            public void work(){                System.out.println(name+"的工作理念是,干活挣钱有饭吃!");            }}

测试类

package com.pb.demo2;/* * 测试类 */public class PersonTest {    public static void main(String[] args) {        //创建Person类的对象        Person hanbing=new Person();        hanbing.name="韩冰";   //姓名赋值        hanbing.age=22;            //年龄        hanbing.sex="女";            //性别        hanbing.eat("刘顿");        hanbing.work();                            }}

结果:

韩冰邀请刘顿一起吃饭
韩冰的工作理念是,干活挣钱有饭吃!

六、类方法的组成

共有5部分组成,访问修饰符,返回值类型,方法名,参数列表,方法体

七、方法重载

7.1、方法重载

方法名相同,参数项不同和(访问修饰符和返回值类型)无关

例如:

package com.pb.demo2;/* * 人类 */public class Person {   //Persion为类名    /*     * 属性,name,sex,age     */            public String     name;     //名字            public String     sex ;        //性别            public int         age;        //年龄                        /*             *方法(行为)              */            //吃饭            public void eat(String name){   //传入一个String类型参数                System.out.println(this.name+"邀请"+name+"一起吃饭");            }            //工作            public void work(){                System.out.println(name+"的工作理念是,干活挣钱有饭吃!");            }            //工作            public void work(String contect){                System.out.println(name+"的工作理念是: "+contect);            }}

测试类:

package com.pb.demo2;import java.util.Scanner;/* * 测试类 */public class PersonTest {    public static void main(String[] args) {        /*//创建Person类的对象        Person hanbing=new Person();        hanbing.name="韩冰";   //姓名赋值        hanbing.age=22;            //年龄        hanbing.sex="女";            //性别        hanbing.eat("刘顿");        hanbing.work();        */        Scanner input = new Scanner(System.in);        Person guest=new Person();        System.out.println("*********测试**********");        System.out.println("请输入姓名:");        String name=input.next();        guest.name=name;          //为对象姓名赋值        System.out.println("请输入年龄:");        int  age=input.nextInt();        guest.age=age;             //为对象年龄赋值        System.out.println("请选择性别:");        System.out.println("1、男   2、女");        switch(input.nextInt()){        case 1:            guest.sex="男";    //为对象性别赋值            break;        case 2:            guest.sex="女";    //为对象性别赋值            break;            default:                System.out.println("输入错误");                return;        }        //调用不带参数的work方法        guest.work();        System.out.println("请输入新的工作理念:");        String contect=input.next();        //调用带参数的work方法        guest.work(contect);    }}

结果:

*********测试**********请输入姓名:张三请输入年龄:22请选择性别:1、男   2、女1张三的工作理念是,干活挣钱有饭吃!请输入新的工作理念:挣钱,取老婆张三的工作理念是: 挣钱,取老婆

 八、成员变量和局部变量

成员变量是定义在类中有变量,在整个类中都有效都可以作用

局部变量在方法中声明的变量,只在这个方法中有效

当成员变量和变量同名时,可以使用this关键字来调用成员变量,如果不加this默认调用局部变量

九、判断下列哪些是方法重载

public void cal(int x,int y,int z){...}

A:public int cal(int x,int y,float z){return 0;}

B:public void cal(int x,int y,int z){return 0;}

C:public int cal(int x,int z){....}

D:public void cal(int x,int y,int z){...}

答案为:A,C

下一题:

A:int f1(){}    int f1(int a){}

B:void f1(int a){}   int f1(int a){}

C:void f1(){}   int f1(int a){}

D: int f1(int b){}  int f1(int a){}

答案为:A,C

  相关解决方案