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

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);
} }

---------------------------------------------------------------------------------------------------------------------------------

测试类TestStudent
package com.tengxun.class6.oop1;

/**
* @Auther: Yu Panpan
* @Date: 2021/12/7 - 12 - 07 - 10:17
* @Description: com.tengxun.class6.oop1
* @version: 1.0
*/
public class TestStudent {
public static void main(String[] args) {
//创建一个对象
Student student = new Student();
//调用方法
student.introduce();
System.out.println("赋值之后... ...");
//修改属性
student.stuNumber = 1001;
student.name = "李硕龙";
student.age = 20;
//输出每一个属性
System.out.println(student.stuNumber);
System.out.println(student.name);
System.out.println(student.age); //调用方法
student.introduce();
student.eat("巴西牛排"); }
}

---------------------------------------------------------------------------------------------------------------------------------

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();
} }

教学日志:javaSE-面向对象1的更多相关文章

  1. JavaSE——面向对象与面向过程、类与对象、(属性、方法、构造器)等

    一:面向对象与面向过程 二者都是一种思想,面向对象是相对于面向过程而言的. 面向过程: 1.面向过程思想强调的是过程(动作). 2.在面向过程的开发中,其实就是面向着具体的每一个步骤和过程,把每一个步 ...

  2. JavaSE| 面向对象的三大特征

    1.面向对象的基本特征之一:封装Encapsulation 目的:隐藏实现细节,让使用者方便,让代码更安全 将对象的属性和行为封装起来,其载体就是类.类通常对客户隐藏其实现细节,这就是封装的思想. 封 ...

  3. JavaSE| 面向对象-类的五大成员

    面向对象 面向对象只是其中一种编程思想,还有很多其他的编程思想:面向过程.面向切面.面向服务编程... 面向过程的思维方式:注重步骤.过程,面向过程强调的是功能行为: 面向对象的思维方式:关注的是“对 ...

  4. javaSE面向对象编程

    面向对象编程 构造器 构造器就是和类名相同但无返回类型的方法. public class Person { //一个类即使什么都不写,它也会存在一个方法 //显示的定义构造器 String name; ...

  5. [javaSE] 面向对象(Object类toString)

    每一个对象,都有一个在内存中的地址哈希值,这个哈希值是十六进制的 调用Object对象的hashCode()方法,返回这个对象的哈希值 调用Integer.toHexString()方法,转换十六进制 ...

  6. JavaSE入门学习23:Java面向对象之构造方法

    学了JavaSE面向对象这一部分,也该对构造方法做一个总结了. 一构造方法 在多数情况下,初始化一个对象的终于步骤是去调用这个对象的构造方法. 构造方法负责对象的初始化工作,为 实例变量赋予合适的初始 ...

  7. JavaSE 基础习题整理 - 面向对象篇

    大家好,今天空闲时间整理了一份JavaSE面向对象的常用习题,喜欢的朋友可以关注我.习题来自互联网,不喜勿喷 1.定义长方形类,含: 属性:宽.高(整型): 方法:求周长.面积: 构造方法3个:(1) ...

  8. javase基础复习攻略《三》

    编程语言的发展: 机器语言——直接由计算机的指令组成,指令.地址.数据都是以"0"和"1"的符号串组成,可以被计算机直接执行. 汇编语言——用容易理解和记忆的符 ...

  9. Java入门姿势【面向对象3】构造方法及其重载_方法的调用

    上次我为大家写出啦"定义类与创建对象_了解局部变量",上篇文章代码可能较多,如没有了解透彻的话请打开下方文章在进行观看一下哦!! [Java入门姿势[面向对象2]定义类与创建对象_ ...

  10. java应届生面试考点收集

    回 到 顶 部 这些知识点来自于之前去百度实习.阿里.蘑菇街校园招聘的电话面试 未完待续 JavaSE 面向对象 封装.继承.多态(包括重载.重写) 常见区别 String.StringBuffer. ...

随机推荐

  1. Vulnstack内网靶场5

    实验环境搭建 漏洞详情 (qiyuanxuetang.net) "此次靶场虚拟机共用两个,一个外网一个内网,用来练习红队相关内容和方向,主要包括常规信息收集.Web攻防.代码审计.漏洞利用. ...

  2. 63.不同路径II

    目录 63.不同路径Ⅱ 题目 题解 63.不同路径Ⅱ 题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为"Start" ). 机器人每次只能向下或者向右移动 ...

  3. day14 linux三剑客之sed命令

    day14 linux三剑客之sed命令 sed命令 Sed 主要用来自动编辑一个或多个文件.简化对文件的反复操作.编写转换程序等. sed(流式编辑器) : sed主要用来修改文件. 1.sed命令 ...

  4. SparkStreaming消费Kafka,手动维护Offset到Mysql

    目录 说明 整体逻辑 offset建表语句 代码实现 说明 当前处理只实现手动维护offset到mysql,只能保证数据不丢失,可能会重复 要想实现精准一次性,还需要将数据提交和offset提交维护在 ...

  5. 面试 Java 后端开发的感受

    上周,密集面试了若干位Java后端候选人,工作经验在3到5年间.我的标准其实不复杂(适用90%小小小公司,BAT等自动忽略): 第一能干活,第二Java基础要好,第三最好熟悉些分布式框架.我相信其它公 ...

  6. How does “void *” differ in C and C++?

    C allows a void* pointer to be assigned to any pointer type without a cast, whereas C++ does not; th ...

  7. Camera、音频录制与Vitamio框架

    一.Camera 1.概述 Android框架包含了各种相机哥相机功能的支持,是你可以在应用中捕获图像和视频. 在应用能使用设备上的相机之前,先想一想将来会如何使用此硬件: (1)Camera  应该 ...

  8. size_type 和 size_t 的区别

    标准库string里面有个函数size,用来返回字符串中的字符个数,具体用法如下:string st("The expense of spirit\n");cout << ...

  9. 【手帐】Bullet Journal教程

    最近觉得自己的日程记录本有待提高,于是从今年开始开始入坑了手帐. *内容源自Bullet Journal官网.https://bulletjournal.com/pages/learn 快速笔记 Bu ...

  10. Mysql资料 锁机制

    目录 一.简介 二.类型 三.操作 四.死锁 第一种情况 第二种情况 第三种情况 一.简介 数据库和操作系统一样,是一个多用户使用的共享资源.当多个用户并发地存取数据 时,在数据库中就会产生多个事务同 ...