教学日志:javaSE-面向对象1

对象,类,属性,方法的理解

package com.tengxun.class6.oop1;

/**
 * @Auther: Yu Panpan
 * @Date: 2021/12/7 - 12 - 07 - 8:55
 * @Description: com.tengxun.class6.oop1
 * @version: 1.0
 */

/**
 * 定义类的时候,属性和方法不是必须的。
 * 一个源文件中可以有N个类,但是有且只能有一个public修饰的类,并且这个源文件的名称必须和public修饰的类名一致
 *
 * 属性:(成员变量)
 *  语法:
 *  [修饰符]   数据类型   属性名  = [默认值];
 *
 *  注意:
 *    1、修饰符和默认值可以没有,没有的时候系统会根据数据类型对应的给默认值
 *    2、数据类型和属性名一定要有,属性名的定义要符合合法的标识符命名规范
 *
 * 方法:
 *   语法:
 *   [修饰符]   方法的返回类型   方法名(形参列表){
 *       逻辑代码;
 *   }
 *
 *  注意:
 *    1、方法可以没有修饰符,java中的修饰符有四个(public、protected、[default]、private后面会讲)
 *    2、方法的返回类型可以没有,void代表无值返回
 *    3、方法的返回类型可以是任意的数据类型,换句话说可以是基本数据类型,也可以是引用数据类型
 *    4、方法的形参列表也可以没有,如果有多个形参列表的时候,需要用逗号
 *    5、方法的参数传递是值传递,这个后面再讲
 *
 *   对象的创建:(实例化的过程)
 *       ClassName objectName = new ClassName();
 *
 *      注意:
 *          1、通过new关键字创建了一个叫objectName的对象,我们称objectName是ClassName一个实例或者说一个对象
 *
 *    如何使用属性和方法:
 *         1、使用对象.成员
 *         2、使用对象.属性  对象.方法   调用
 *
 */
public class Student {

    //定义属性
    int stuNumber;  //学号
    String name; //姓名
    int age;  //年龄

    //定义一个方法
     void introduce(){
        System.out.println("学号:" + stuNumber +"  姓名:"  +name +"  年龄:" +age);
    }

    //定义一个吃的方法
    public void eat(String food){
        System.out.println(name +"正在吃:"+ food);
    }

}
package com.tengxun.class6.oop1;

/**
 * @Auther: Yu Panpan
 * @Date: 2021/12/7 - 12 - 07 - 10:19
 * @Description: com.tengxun.class6.oop1
 * @version: 1.0
 */

import java.util.Scanner;
/**
 * 更改管理员密码
 */
public class Administrator {

    //定义属性
    String account = "admin";
    String password = "123456";

    //定义方法输出账号和密码
    public void accountInfo(){
        System.out.println("账号:" + account +"\t密码:" +password);
    }

    public static void main(String[] args) {
        //创建一个对象
        Administrator admin = new Administrator();
        System.out.println("未修改密码之前的账号信息------");
        admin.accountInfo();
        //创建一个Scanner
        Scanner sc = new Scanner(System.in);
        while(true){
            System.out.print("请输入账号名称:");
            String accountName = sc.next();
            System.out.print("请输入密码:");
            String pwd = sc.next();
            //验证账号信息是否合法
            if(accountName.equals(admin.account) && pwd.equals(admin.password)){
                //合法,修改密码
                System.out.print("请输入新密码:");
                pwd = sc.next();
                admin.password = pwd;
                break;
            }else{
                System.out.println("您输入的账号信息有误,请重新输入!");
            }
        }
        //输出修改之后的账号信息
        System.out.println("修改密码之后的账户信息------");
        admin.accountInfo();
    }

}

Original: https://www.cnblogs.com/yppjava/p/15690477.html
Author: jason的java世界
Title: 教学日志:javaSE-面向对象1

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/572120/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • java学习之spirng的aop

    AOP技术 什么是AOP技术:在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一…

    Java 2023年6月13日
    076
  • Java学习-079-多线程12:使用 synchronized 同步方法解决多线程资源同步问题

    语法示例: 源代码示例如下所示: 测试方法源代码如下所示: 程序执行后输出结果如下所示: [售票窗口 5] INFO com.fanfengping.demo.Demo05Sale…

    Java 2023年5月29日
    087
  • 人到中年,做管理真的需要懂的管理必备知识

    课堂三点要求: 认真听讲,记笔记 * – 讲义电子版会给补充,不要急于找资料 – 跟着课堂节奏 积极参与课堂互动,远程依然有温度 * – 课堂提…

    Java 2023年6月16日
    083
  • 080_入门案例-fanout 发布订阅模式

    RabbitMQ的模式之发布订阅模式 生产者 消费者 RabbitMQ的模式之发布订阅模式 :::info参考官网:https://www.rabbitmq.com/getstar…

    Java 2023年6月7日
    0108
  • C9800配置Session timeout和Idle timeout

    对客户端会话时间的修改通常发生在客户端会话超时时。一般客户会话超时,在logging中可以看到类似如下的log YYYY/DD/MM HH:MM:SS.xxx {wncd_x_R0…

    Java 2023年5月30日
    0115
  • ViewGroup 和 View 事件传递及处理小谈

    在自定义组件的时候少不了会去处理一些事件相关的东西,关于事件这块网上有很多文章,有说的对的也有说的不对的,我在理解的时候也有过一段时间的迷惑,现在把自己理解的东西写下来,给有相同疑…

    Java 2023年6月7日
    067
  • nacos集群搭建

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月13日
    063
  • SpringBoot学习笔记——用springboot简单搭建新应用

    最近在搞一个项目,摒弃了公司老套的框架模式, 采用了springboot搭建新应用。看到如此简洁的代码 , 深受诱惑。趁周末闲余之时, 打开了b站,跟着动力节点的视频学起了spri…

    Java 2023年6月7日
    080
  • Java GC 日志详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt105 java GC日志可以通过 +PrintGCDet…

    Java 2023年5月29日
    082
  • JavaScript详解

    一、快速入门 1.JavaScript的两种引入方式 方式一:直接在html里面写 目的:实现简单的弹窗 点击查看代码 <!DOCTYPE html> <html…

    Java 2023年6月13日
    074
  • LeetCode剑指Offer刷题总结(四)

    class Solution { public List> levelOrder(TreeNode root) { Deque deque = new LinkedList&…

    Java 2023年6月7日
    083
  • 【设计模式】汉堡中的设计模式——观察者模式

    【设计模式】汉堡中的设计模式——观察者模式 【设计模式】汉堡中的设计模式——观察者模式 情景带入 为什么关注公众号就可以 发布者-订阅者模式与观察者模式 + 观察者模式(Obser…

    Java 2023年6月5日
    099
  • JavaCoreTechnology-1

    反射:能够分析类能力的程序称为反射。 在Java中提供了一个反射库,里面涵盖了大量的丰富精巧的工具集,可以用来编写能够动态操纵Java代码的程序。 在之后的文章中将会介绍到反射的功…

    Java 2023年6月5日
    0101
  • 浅谈Java正则表达式

    正则表达式我们都知道,它定义了字符串的模式,可以用来搜索、编辑或处理文本。我们在某些特定场景中用起来是非常方便的。它等于是给我们划定了一个范围,让我们可以精准的匹配到我们想要的结果…

    Java 2023年6月7日
    071
  • 力扣刷题-1两数求和

    自己只会暴力求解,看见大佬的进阶求解,感觉tql,题源链接 Original: https://www.cnblogs.com/chaos2022/p/16608877.htmlA…

    Java 2023年6月13日
    076
  • 微服务保护

    1.初识Sentinel 1.1.雪崩问题及解决方案 1.1.1.雪崩问题 依赖服务I的业务请求被阻塞,用户不会得到响应,则tomcat的这个线程不会释放,于是越来越多的用户请求到…

    Java 2023年6月9日
    084
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球