Java语言中类与对象的创建

文章目录

  • Java语言中类与对象的创建
    • 一、实验目的:
    • 二、实验要求:
    • 三、实验内容:

一、实验目的:

1、掌握类、对象的概念;
2、掌握对象的创建过程;
3、理解对象的隐蔽性、抽象性等特征;
4、熟练创建类、创建对象;
5、理解对象在内存的存储;
6、了解构造方法作用,掌握构造方法编写规则;
7、掌握、并熟练运用成员变量等。

二、实验要求:

1、能够根据实验题目要求设计相应的类;
2、能够根据需要,设计构造方法,设计成员变量;
3、根据要求创建对象,并进行信息处理。

三、实验内容:

创建学生类,然后用这个学生类创建一个学生对象。
(1)学生类:类名Student
   成员变量:
    变量含义 数据类型 变量名(自己定义)
      学号  String
      姓名  String
      班级  String
      数学成绩  int
      物理成绩  int
   成员方法:
       ①构造方法:实例化时对学生学号、姓名、班级进行初始化;
       ②分别编写学号、姓名、班级三个基本成员变量的set()方法和get()方法;
       ③编写显示学生的综合信息(学号、姓名、班级)方法,显示格式如下:学号:xxx 姓名:xxx 班级:xxxx;
       ④分别编写数学成绩、物理成绩两个成员变量的set()方法和get()方法;
       ⑤分别编写统计总成绩、统计平均成绩的totalScore()和averageScore()方法;
(2)要求:
   ① 按照题目要求创建Student类、要求包括成员变量,并按要求设计相应的方法;
   ② 编写一个学生管理类StudManagement,用其中的main()方法实现学生类的一个对象,从键盘分别输入数学成绩和和物理成绩,并调用它们的set()方法把成绩保存到对应成员变量中,通过调用totalScore()和averageScore()方法,以及三个基本成员变量的get()方法,显示所有信息。
   ③完成实验报告。

代码部分:

import java.util.Scanner;    // 导入Scanner库实现控制台输入class StudManagement
{public static void main(String[] args) // 主入口函数{Scanner scanner = new Scanner(System.in); // 实例化ScannerStudent student = new Student();  // 实例化Student类student.setId("202141084097");  // 利用set()方法设置学号、姓名、班级student.setName("林鹏");student.setCalss("数科2194");System.out.println("请输入数学成绩:");    // 通过控制台分别输入数学成绩和物理成绩student.setMathScore(scanner.nextInt());    //接收控制台int类型的参数System.out.println("请输入物理成绩:");student.setPhyScore(scanner.nextInt());System.out.println("总成绩为:" + student.totalScore()); // 运用totalScore()方法获取总成绩System.out.println("平均成绩为:" + student.averageScore());    // 运用averageScore()方法获取平均成绩student.show();  // 运用show()方法获取信息}
}class Student
{private String sId;    // 设置成员变量,设置sId, sName, sClass为私有只能通过set()方法和get()方法才能调用private String sName;private String sClass;public int iMathScore;public int iPhyScore;public Student(String sId, String sName, String sClass)    // 定义一个含有三个参数的构造方法{this.sId = sId;this.sName = sName;this.sClass = sClass;}public Student()  // 定义一个不含参数的构造方法,成员变量在没有赋值的情况下,系统会根据变量数据类型自动分配初始值{}public void setId(String sId)  // 定义三个私有成员变量的set()方法,需要接收参数,没有返回值,所以返回值类型为void{this.sId = sId;   //  因为形参的名字与成员变量名相同所以加this.}public void setName(String sName){this.sName = sName;}public void setCalss(String sClass){this.sClass = sClass;}public String getId() // 定义三个私有成员变量的get()方法,不需要接收参数,返回值类型均为String{return this.sId;  // 有返回值,所以用return}public String getName(){return this.sName;}public String getClazz(){   return this.sClass;}public void show()  // 定义show()方法,显示出所有信息{System.out.println("学号为:" + this.sId + "\t 姓名为:" + this.sName + "\t 班级为:" + this.sClass);}public void setMathScore(int iMathScore) // 定义两个共有变量的set()方法,需要接收参数,无返回值,所以返回值类型为void{this.iMathScore = iMathScore;}public void setPhyScore(int iPhyScore){    this.iPhyScore = iPhyScore;}public int getMathScore()  // 定义两个共有变量的get()方法,不需要接收参数,返回值类型均为int{return this.iMathScore;    // 有返回值,所以用return}public int getPhyScore(){return this.iPhyScore;}public int totalScore()    // 定义一个计算数学和物理成绩的和的方法,不需要接收参数,返回值类型为int{  return (this.iMathScore + this.iPhyScore); // 有返回值,所以用return}public int averageScore()  // 定义一个计算数学和物理成绩的和的平均分的方法,不需要接收参数,返回值类型为int{return (this.iMathScore + this.iPhyScore)/2; // 有返回值,所以用return    }
}

运行结果:

实验小结:
   实例化对象调用的方法,如果该方法无返回值类型,且输出为System.out.println(),那么在主函数中就不能在System.out.println()中调用此方法,应直接使用实例化对象.方法()的方式调用该方法。
   如果想要获得一个有return值的方法的return的值,则可以在System.out.println()中调用方法,获得该值。

Java语言中类与对象的创建相关推荐

  1. java 对象的定义是_浅析Java编程中类和对象的定义

    1,什么是类? 答:类是客观存在的,抽象的,概念的东西. 2,什么事对象? 答:对象是具体的,实际的,代表一个事物.例如:车是一个类,汽车,自行车就是他的对象. 关于类与对象的描述:类是对象的模版,对 ...

  2. java日常笔记、对象的创建完全是由构造方法实现的吗?this的本质

    java日常笔记.对象的创建完全是由构造方法实现的吗 不完全是构造方法是创建java对象重要途径,通过new关键字调用构造器时,构造器也确实返 回了该对象,但这个对象并不是完全由构造器负责创建的,创建 ...

  3. java初始化实例化_Java对象的创建过程:类的初始化与实例化

    一.Java对象创建时机 我们知道,一个对象在可以被使用之前必须要被正确地实例化.在Java代码中,有很多行为可以引起对象的创建,最为直观的一种就是使用new关键字来调用一个类的构造函数显式地创建对象 ...

  4. Java培训教程之对象的创建与使用

    本文小千分享Java面向对象中的对象创建与使用.类是对象的抽象,为对象定义了属性和行为,但类本身既不带任何数据,也不存在于内存空间中.而对象是类的一个具体存在,既拥有独立的内存空间,也存在独特的属性和 ...

  5. java有一个学生对象_创建学生集合类_根据学生学号倒序排列__java学习--基础知识第九天--对象数组、集合类之ArrayList、学生管理系统案例...

    今日内容介绍 u 对象数组 u 集合类之ArrayList u 学生管理系统案例 第1章 对象数组 1.1 对象数组概述 A:基本类型的数组:存储的元素为基本类型 int[] arr={1,2,3,4 ...

  6. java语言中类定义数组赋值_在Java语言中,下列对于字符数组的定义并赋值正确的是(选一项)_学小易找答案...

    [单选题]<茶花女--饮酒歌>这段音乐属于级进还是跳进的旋律? <茶花女-饮酒歌>.mp4 [简答题] [单选题]对外汉语教学中以系统讲授语言知识的一类课型,包括语音.词汇.语 ...

  7. 基于Java语言的面对对象进阶算法练习

    主要是对面向对象基础的进一步拓展,对private,static,this等关键字的熟练掌握. 文章目录 一,编写一个类Task,代表GTA5的主线任务. 1.问题 2.代码 3.效果截图 二,通过类 ...

  8. Java语言基础(常见对象3(数组排序(冒泡排序、选择排序、直接插入排序、快速排序、归并排序)、Arrays、基本数据类型包装类、Integer类、自动拆箱、自动装箱))

    Java语言基础 常见对象 数组排序 冒泡排序 相邻元素两两比较,大的往后放,第一次完毕,最大值的元素就会出现在最大索引处:以此循环 //冒泡排序:public static void main(St ...

  9. [渝粤教育] 中国地质大学 Java语言程序设计 复习题

    <Java语言程序设计>模拟题 一.单项选择题 1.下列程序段执行后的结果是( ).String s = new String("abcdefg");for (int ...

最新文章

  1. OpenCV中的对极几何和对极约束
  2. 第1关:利用栈实现整数的十进制转八进制
  3. 级联模60计数器(Verilog HDL语言描述)(仿真与综合)
  4. Activity管理(二):adj内存管理机制
  5. HTML5 随机弹跳的小球
  6. Scikit-learn 概述
  7. Linux守护进程的创建(结合nginx框架)
  8. yaml parse python_python-yaml
  9. Visual Studio 2019 16.1 正式发布,更快更高效
  10. Java面向对象之抽象方法抽象类、接口的使用
  11. python必背100源代码-100行Python代码实现自动抢火车票(附源码)
  12. 当前日期增加自然月(比如当前时间为3月31号,加上1个月,预期结果是4月30日,但是输出了5月1日)...
  13. 用python编程分苹果_Python实现分苹果(递归)
  14. 【工控安全产品】工控主机卫士
  15. 有哪些wordpress企业网站主题推荐?
  16. 算法面试题-用单向链表表示十进制整数,求两个正整数之和。1234+34=1268
  17. STM32F429i disco 体验
  18. 运维工程师主要做什么_弱电工程IT运维工作到底是做什么的?
  19. JavaWeb:(二)HTML
  20. python公众号留言功能_搭建hexo博客给公众号制作留言功能

热门文章

  1. 蓝牙芯片|伦茨科技-智能蓝牙BLE5.2芯片ST17H66
  2. python基于web的安装程序_python web.py安装使用
  3. 有了花呗还需要办信用卡吗?
  4. 人工智能科技出海服务公司ADVANCE.AI助力企业开拓尼日利亚市场
  5. 目标检测YOLO实战应用案例100讲-基于深度学习的自动驾驶车辆三维目标检测方法研究与应用
  6. spring报MySQLSyntaxErrorException: Unknown error 1146
  7. 清默网络——我的CCIE考试经验与心得(2)
  8. jquery服务器文件保存到本地,jQuery本地存储
  9. 11. WS · HTTPDNS · FTP · 邮件
  10. supervision