一、理解什么是类和对象

万事万物皆对象

      1、属性——对象具有的特征(特点)

      2、方法——对象可执行的操作(能干什么事)

      3、对象的定义:

是一个客观存在的,看的见或摸得着的实体,由属性方法构成

      4、类是由对象抽象出来的,看不见也摸不着

      5、类和对象的关系?

                              类(是笼统)是模子是对象的抽象化,对象(具体的)是类的具体化

 

复制代码
复制代码
String schoolName;    //中心名称
    int classNumber;    //教室数目
    int labNumber;        //机房数目
    
    //定义北大青鸟中心的方法
    public void showCenter(){
        System.out.println(schoolName+" 培训中心\n"+"配备:"+classNumber+"教"+labNumber+"机");
    }
复制代码
复制代码

 

复制代码
复制代码
public static void main(String [] args){
            No1 center=new No1();
            System.out.println("***初始化成员变量后***");
            center.showCenter();
            center.schoolName="北京远航";    //给schoolName属性赋值
            center.classNumber=10;        //给classNumber属性赋值
            center.labNumber=10;        //给labNumber属性赋值
            System.out.println("***初始化成员变量后");
            center.showCenter();
        }
复制代码
复制代码

 

二、封装——包装

1、2种表现形式:属性和方法

2、封装的作用:

隐藏内部实现的细节,使之操作简单方便

3、java中体现的封装:

                        类——所有的java代码在类中(方法)编写

                        MyEclipse工具以项目的形式,封装

 

三、会创建和使用对象

 

1、创建类的语法

访问修饰符 class 类名{

                        属性;

              public void 方法名(){

                                                //循环结构、条件判断(if、switch)

                                                //输出语句

}

}

2、创建对象

                        类名 对象名=new 类名();

                                    Scanner input=new Scanner(System.in);

 

如何调用属性和方法?

                        成员变量(属性名),通过:对象名.属性名;

                        方法,通过:对象名.方法名();

利用面向对象做一个简单计算机

复制代码
复制代码
double a;
    double b;
    char yun;
    public void suan(){
        switch (yun){
        case '+':
            System.out.println(a+"+"+b+"="+(a+b));
            break;
        case '-':
            System.out.println(a+"-"+b+"="+(a-b));
            break;
        case '*':
            System.out.println(a+"*"+b+"="+(a*b));
            break;
        case '/':
            if (b!=0){
            System.out.println(a+"/"+b+"="+(a/b));
            }else{
                System.out.println("除数不能为0!");
            }
            break;
        }
    }
复制代码
复制代码

 

复制代码
复制代码
    public static  void main(String [] args){
    No7 s=new No7();
    Scanner input=new Scanner(System.in);
    System.out.print("请输入第一个数");
        s.a=input.nextDouble();
        System.out.print("请输入第二个数 ");
        s.b=input.nextDouble();
        System.out.println("请输入运算符(+、-、*、/)");
        s.yun=input.next().charAt(0);
        s.suan();
        }
复制代码
复制代码

面向对象

       类——名词

      属性——形容词

      方法——动词

      1、类之间的通信(访问):在一个类中new出另外一个类的对象,通过对象名.类的成员名

                  类的成员:属性(成员变量)、方法(成员方法)

      2、优点:

信息封装和隐藏,

提高程序的安全性、可重用性、可维护性

五、调试

                  1、设置断点

                  2、启动调试

                  3、按F6逐行执行程序

                                          遇到【方法】,调试方法中的代码,按F5

 

步骤1:编写类(属性、方法)

                       属性不在该类中赋值

                       方法,输出该属性的值

步骤2:新建有main的类(测试类)

步骤3:

                       创建步骤1的类的对象

                       对象名.属性=值;(从控制台赋值)

                       对象名.方法名();//将属性的值输出

 

复制代码
复制代码
/** 旧姓名*/
    String oldName;
    /** 旧密码*/
    String oldMi;
    /** 新姓名*/
    String name;
    /** 密码*/
    String passwords;
    /** 新密码*/
    String newPasswords;
    /** 输出帐号的show方法*/
    public void show(){
        Scanner input=new Scanner(System.in);
        boolean f=false;
        /**利用循环进行判断 */
         do{
        System.out.print("请输入姓名:");
        name=input.next();
        System.out.print("请输入密码:");
        passwords=input.next();
        /** */
        if (name.equals(oldName)&&passwords.equals(oldMi)){
            System.out.print("\n请输入新密码");
            newPasswords=input.next();
            System.out.println("密码修改成功!新密码为:"+newPasswords);
            f=true;
            break;
        }else{
            System.out.println("密码输入错误!您没有权限更改密码。");
            break;
        }
         }while (f==true);
         
    }
复制代码
复制代码

 

复制代码
复制代码
public static void main(String [] args){
        Scanner input=new Scanner(System.in);
         No11  d=new No11();
         d.oldName="admin1";
         d.oldMi="1111";
         d.show();
    }
复制代码
复制代码