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

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. centos安装后的个人工具

    1.安装vim工具 yum -y install vim 安装完成后在家目录下新建一个.vimrc的配置文件.辅助vim软件功能. set number " 显示行号 set cursorl ...

  2. 修改unittest源码之tearDown

    需求 最近在写selenium自动化平台,想把每条用例后面都带上截图,最开始是每条用例加上封装好的截图函数,但是发现太麻烦,就决定加在tearDown函数里面,每条用例结束后执行截图操作. 那么问题来 ...

  3. 联盛德 HLK-W806 (六): I2C驱动SSD1306 128x64 OLED液晶屏

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  4. day18定时任务

    day18定时任务 什么是定时任务 类似日常生活之中的闹钟:主要用于定时执行某些命令,达到定时处理数据的作用. 作用: 1.类似生活中使用的闹钟 2.可以自动完成操作命令 3.定时备份系统数据信息 定 ...

  5. myatoi

    atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中.int atoi(const char *nptr) 函数会扫描参数 nptr字符串 ...

  6. haproxy动态增减主机与keepalived高级应用

    一:本文将详细介绍haproxy的配置使用以及高级功能的使用,比如通过haproxy进行动态添加删除负载集群中的后端web服务器的指定主机,另外将详细介绍keepalived的详细配置方法.配置实例及 ...

  7. Android,iOS系统有什么区别

    两者运行机制不同:IOS采用的是沙盒运行机制,安卓采用的是虚拟机运行机制.Android是一种基于Linux的自由及开源的操作系统,iOS是由苹果公司开发的移动操作系统IOS中用于UI指令权限最高,安 ...

  8. CentOS Linux下编译安装MySQL

    本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...

  9. ubantu安装maven

    下载地址 http://maven.apache.org/download.cgi 或直接命令行下载 wget https://downloads.apache.org/maven/maven-3/3 ...

  10. Shell脚本实现乱序排列文件内容的多种方法(洗牌问题)

    洗牌问题:洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样高效率的实现乱序排列? ChinaUnix 确实是 Shell 高手云集的地方,只要你想得到的问题,到那里基本上都 ...