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

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. A Child's History of England.30

    CHAPTER 10 ENGLAND UNDER HENRY THE FIRST, CALLED FINE-SCHOLAR Fine-scholar, on hearing of the Red Ki ...

  2. ceph对象存储场景

    安装ceph-radosgw [root@ceph-node1 ~]# cd /etc/ceph # 这里要注意ceph的源,要和之前安装的ceph集群同一个版本 [root@ceph-node1 c ...

  3. Learning Spark中文版--第三章--RDD编程(2)

    Common Transformations and Actions   本章中,我们浏览了Spark中大多数常见的transformation(转换)和action(开工).在包含特定数据类型的RD ...

  4. Android数据存取

    Android数据存取 一.SharedPreferencesc存取数据 SharedPreferences是使用键值对的方式来存储数据的,也就是在保存一条数据时,需要给这条数据提供一个对应的键,这样 ...

  5. Lombok安装及Spring Boot集成Lombok

    文章目录 Lombok有什么用 使用Lombok时需要注意的点 Lombok的安装 spring boot集成Lombok Lombok常用注解 @NonNull @Cleanup @Getter/@ ...

  6. oracle 当月日历的sql

    select max(sun) sun, max(mon) mon, max(tue) tue, max(wed) wed, max(thu) thu, max(fri) fri, max(sat) ...

  7. mysql 执行报错:Error querying database. Cause: java.sql.SQLSyntaxErrorException:which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

    1.这个错误发生在mysql 5.7 版本及以上版本会出现的问题: mysql 5.7版本默认的sql配置是:sql_mode="ONLY_FULL_GROUP_BY",这个配置严 ...

  8. 【Linux】【Services】【DNS】bind基础

    1. 概念 1.1. DNS: Domain Name Service, 应用层协议,占用53/udp, 53/tcp 1.2. tld(顶级域):Top Level Domain 组织域:.com, ...

  9. HDC2021技术分论坛:进程崩溃/应用卡死,故障频频怎么办?

    ​作者:jiwenqiang,DFX技术专家 提到开发一个产品,我们通常首先想到的是要实现什么样的功能,但是除了功能之外,非功能属性也会很大程度上影响一个产品的体验效果,比如不定时出现的应用卡死.崩溃 ...

  10. 01 - Vue3 UI Framework - 开始

    写在前面 一年多没写过博客了,工作.生活逐渐磨平了棱角. 写代码容易,写博客难,坚持写高水平的技术博客更难. 技术控决定慢慢拾起这份坚持,用作技术学习的阶段性总结. 返回阅读列表点击 这里 开始 大前 ...