Java面向对象编程-1

面向对象目录
1 类与对象
2 封装 
  2.1 构造方法
  2.2 类的结构 
3 继承
  3.1 类的设计与扩展 
4 接口
  4.1 事件监听器
5 抽象类
6 泛型
7 枚举


1 类与对象

1.1类与对象

类(class)是对一类事物的抽象信息描述。这些事物具有相同的或者相似的属性、特征、行为、功能。

对象(object)是具体的事物(实体)。

类与对象的关系如下表所示。

类(class)对象(object)
人类具体的某个人
用户类某个具体的用户
…………

1.2 类的定义

1)关键字:class 

2)格式:class 类名{ }

3)类名命名规则:要求使用驼峰命名法。例如:JavaFirstClass  

4)内容:可以写的东西很多:主函数、静态资源等等,与面向对象有关的:属性和方法。

①属性。描述一类事物共有的、名词或形容词的数据,可以用一个变量表达。

格式:属性数据类型 属性名;

例如:String name; String pwd; int age; 

由于尚未实例化,因此不需要对这些变量赋值。

②方法。描述一类事物共有的行为功能。

格式:返回值类型 方法名(参数类型 参数名){//方法体  }

e.g.登录注册程序。

1、定义用户类User。

属性:用户名、密码、在线状态……

方法:查看信息、登录、检查密码、修改密码……

2、创建实体user1、user2。只对user1做初始化,并调用方法。

public class User{

    //属性
    //需要直接赋值?不需要
    String userName;//用户名
    String password;//密码
    boolean onlineState;//登录状态

    //方法
    void showInfo(){//显示信息

        System.out.println("------User Information------");
        System.out.println("username:"+userName);
        System.out.println("password:"+password);
        System.out.println("online state:"+(onlineState?"ONLINE":"OFFLINE"));

    }

    boolean checkPassword(String pwdIn){//检查密码

        //哪个对象调用方法,方法中的属性就是哪个对象
        //除了关键字数据类型,都不可以使用==比较
        if (pwdIn.equals(password)){
            System.out.println("RIGHT password");
            return true;
        }
        else{
            System.out.println("WRONG password");
            return false;
        }

    }

    void logIn(String pwdIn){//登录

        if (check_password(pwdIn)){
            System.out.println("successful");
            onlineState = true;
        }
        else {
            onlineState = false;
            System.out.println("unsuccessful");
        }

    }

    void changePassword(String old_pwd,String new_pwd){//修改密码

        if (checkPassword(old_pwd)){
            System.out.println("successful change");
            password = new_pwd;
        }
        else {System.out.println("unsuccessful change");}

    }


    //程序入口
    public static void main(String[] args) {

        //实例化
        //转为对象
        //类:模板
        //对象:根据模板创建的实体
        //格式
        //类名 对象名 = new 类名();
        User user1 = new User();
        user1.userName = "user1";
        user1.password = "0000";
        //登录状态online_state默认为false

        // 调用方法
        user1.showInfo();
        System.out.println(user1.checkPassword("00000"));
        System.out.println(user1.checkPassword("0000"));
        user1.logIn("00000");
        user1.logIn("0000");
        user1.changePassword("00000","0000");
        user1.changePassword("0000","00000");
        user1.showInfo();

        // 每个对象都是独立存在的 - 都有一份自己的内存数据
        User user2 = new User();
        user2.showInfo();

    }
}

运行结果

------User Information------
username:user1
password:0000
online state:OFFLINE
WRONG password
false
RIGHT password
true
WRONG password
unsuccessful
RIGHT password
successful
WRONG password
unsuccessful change
RIGHT password
successful change
------User Information------
username:user1
password:00000
online state:ONLINE
------User Information------
username:null
password:null
online state:OFFLINE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Java面向对象编程电子书是一本详细介绍Java面向对象编程概念、原理和实践的电子书籍。本书从基础概念开始,逐步深入到高级主题,使读者能够全面理解Java面向对象编程的核心思想和技术。 首先,本书会介绍面向对象编程的基本理念和原则,例如封装、继承和多态等。读者将能够了解到如何使用Java语言中的类、对象和方法来实现这些概念,并学会如何通过类和对象之间的关系来进行数据和行为的组织。 接着,本书将详细介绍Java中的类和对象的创建、属性和方法的定义以及对象之间的交互。读者将学会如何使用构造函数来创建对象实例,并掌握如何在类中定义属性和方法,并使用它们来访问和修改对象的状态。 另外,本书还会涵盖继承和多态的概念和实践。读者将了解到如何通过继承来创建子类,并使用多态来实现不同对象之间的统一接口。这些技术将大大提高代码的可复用性和可扩展性。 此外,本书还会介绍Java面向对象编程中的其他重要概念,如抽象类、接口、封装和设计模式等。这些概念和技术将使读者更加熟悉Java面向对象编程的整体框架,并能够应用到实际的开发中。 总而言之,Java面向对象编程电子书是一本很好的学习资料,它详细介绍了Java面向对象编程的基本概念、原则和实践。读者通过学习本书,将能够深入理解并掌握Java面向对象编程的核心思想和技术,从而提高自己的编程能力和应用水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值