零基础学java应该从哪里开始?零基础学Java最开始要做的就是整理出一份Java学习路线,只有合理规划学习路线才能在最短的时间里有效的学习。下面来看一份Java的学习路线以供参考
声明Student类以及它的子类,学生的属性包含学号、姓名、数学成绩和计算机成绩
java编程题 本人新手,求详解。
先看下最终的结果吧,是不是你想要的?
项目结构如下图所示:
其中,Student是父类,PostGraduate是子类,继承自父类Student,Main是主类,用于创建对象以及把这些对象的功能调用起来。
---------------------------Student代码如下:------------------------------
/**
* 学生类
* @author 逍遥
*
*/
public class Student {
//学号
private int sId;
//姓名
private String sName;
//数学成绩
private double mathScore;
//计算机成绩
private double computerScore;
/**
* 获取学号
* @return
*/
public int getsId() {
return sId;
}
/**
* 设置学号
* @param sId
*/
public void setsId(int sId) {
this.sId = sId;
}
/**
* 获取姓名
* @return
*/
public String getsName() {
return sName;
}
/**
* 设置姓名
* @param sName
*/
public void setsName(String sName) {
this.sName = sName;
}
/**
* 获取数学成绩
* @return
*/
public double getMathScore() {
return mathScore;
}
/**
* 设置数学成绩
* @param mathScore
*/
public void setMathScore(double mathScore) {
this.mathScore = mathScore;
}
/**
* 获取计算机成绩
* @return
*/
public double getComputerScore() {
return computerScore;
}
/**
* 设置计算机成绩
* @param computerScore
*/
public void setComputerScore(double computerScore) {
this.computerScore = computerScore;
}
/**
* 输出成员变量(4个成员变量)的信息。
*/
public void print(){
System.out.println("学号:"+sId);
System.out.println("姓名:"+sName);
System.out.println("计算机成绩:"+mathScore);
System.out.println("数学成绩:"+computerScore);
}
}
---------------------------Student代码结束------------------------------
---------------------------PostGraduate代码如下:------------------------------
/**
* 研究生类
* @author 逍遥
*
*/
public class PostGraduate extends Student{
//导师姓名
private String tName;
//研究方向
private String ResearchDirection;
/**
* 获取导师姓名
* @return
*/
public String gettName() {
return tName;
}
/**
* 设置导师姓名
* @param tName
*/
public void settName(String tName) {
this.tName = tName;
}
/**
* 获取研究方向
* @return
*/
public String getResearchDirection() {
return ResearchDirection;
}
/**
* 设置研究方向
* @param researchDirection
*/
public void setResearchDirection(String researchDirection) {
ResearchDirection = researchDirection;
}
/**
* 研究生类重写父类的void print()方法,功能是输出成员变量(6个成员变量)的信息
*/
@Override
public void print() {
// TODO Auto-generated method stub
super.print();
System.out.println("导师姓名:"+tName);
System.out.println("研究方向:"+ResearchDirection);
}
}
---------------------------PostGraduate代码结束------------------------------
---------------------------Main代码如下:------------------------------
import java.util.Scanner;
/**
* 主类
* @author 逍遥
*
*/
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//用于获取从键盘上输入的信息
Scanner input=new Scanner(System.in);
//创建一个Student类的对象
Student student=new Student();
//从键盘上输入其属性信息
System.out.print("请输入学生的学号:");
student.setsId(input.nextInt());
System.out.print("请输入学生的姓名:");
student.setsName(input.next());
System.out.print("请输入学生的数学成绩:");
student.setMathScore(input.nextDouble());
System.out.print("请输入学生的计算机成绩:");
student.setComputerScore(input.nextDouble());
//并且通过其print方法输出这些信息;
student.print();
//创建一个PostGraduate类的对象
PostGraduate postGraduate=new PostGraduate();
//从键盘上输入其属性信息
System.out.print("请输入研究生的学号:");
postGraduate.setsId(input.nextInt());
System.out.print("请输入研究生的姓名:");
postGraduate.setsName(input.next());
System.out.print("请输入研究生的数学成绩:");
postGraduate.setMathScore(input.nextDouble());
System.out.print("请输入研究生的计算机成绩:");
postGraduate.setComputerScore(input.nextDouble());
System.out.print("请输入研究生的导师姓名:");
postGraduate.settName(input.next());
System.out.print("请输入研究生的研究方向:");
postGraduate.setResearchDirection(input.next());
//并且通过其print方法输出这些信息。
postGraduate.print();
}
}
---------------------------Main代码结束------------------------------
=================知识点的简单总结=================
本题考察的知识点是面向对象的三大特性之一:继承。
Student为父类,包含了学号、姓名、数学成绩和计算机成绩4个属性,以及一个print()方法。
PostGraduate 继承父类的时候,继承了父类中的所有方法,因为方法我都是用的public,而属性继承不了,因为我在父类中用了封装,所有属性都用private修饰了,想访问属性的话,必须通过get、set方法,这里,我重写了父类中的print方法,通过super.print();调用了父类中的print()方法。
最后就是Main类,提供了main方法作为入口函数,用于按要求声明这些对象以及去调用对象中的方法。
创建Student类, 属性包括:学号,姓名,英语成绩,数学成绩,计算机成绩 方法包含:构造?
class Student { private int ID; private String Name; private double EnglishScore; private double MathScore; private double ComputerScore; public Student() { ID = 1; Name = "Student1"; EnglishScore = 80; MathScore = 80; ComputerScore = 80; } public Student(int id, String name, double englishS, double一道java题 请设计一个学生类Student。属性包括:学号、姓名、英语成绩、数学成绩、计算机
publicclassStudent
{
privateStringstuId;
privateStringname;
privatefloatenglishScore;
privatefloatmathScore;
privatefloatcomputerScore;
privatefloatsumScore;
publicStudent()
{
}
publicStudent(StringstuId,Stringname,floatenglishScore,
floatmathScore,floatcomputerScore)
{
this.stuId=stuId;
this.name=name;
this.englishScore=englishScore;
this.mathScore=mathScore;
this.computerScore=computerScore;
this.sumScore=sum();
}
publicStringgetStuId()
{
returnstuId;
}
publicvoidsetStuId(StringstuId)
{
this.stuId=stuId;
}
publicStringgetName()
{
returnname;
}
publicvoidsetName(Stringname)
{
this.name=name;
}
publicfloatsum()
{
returnsumScore=englishScore+mathScore+computerScore;
}
publicfloattestScore()
{
returnsum()/3;
}
publicStringcompare(Studentstudent)
{
if(this.sumScore>student.sum())
return"大于";
elseif(this.sumScore==student.sum())
return"等于";
elsereturn"小于";
}
publicstaticvoidmain(String[]args)
{
Studenttim=newStudent("0001","tim",90,90,90);
Studenttom=newStudent("0001","tom",80,90,95);
System.out.println("tim的测评成绩:"+tim.testScore());
System.out.println("tom的测评成绩:"+tom.testScore());
System.out.println("tim总成绩"+tim.compare(tom)+"tom总成绩");
}
}
上面的代码作为作业应该够用了,如果应用最好重写equals和hashCo方法。
定义一个student类,包括学号、姓名、性别、数学、计算机、英语、平均分等属性,
定义: struct student { int num; char name[20]; char sex; float score[4]; }stu[10]; 剩下的你还是自己翻书吧,不难,你自己翻书的收获要远大于问人的收获。创建一个学生类(student),包含:学号,姓名,性别,Java成绩,sql 成绩,c语言成绩,html成绩,总分,平均分。
学生类:
publicclassStudent
{
privateStringstuId;
privateStringname;
privateStringgender;
privatefloatjavaScore;
privatefloatsqlScore;
privatefloatcScore;
privatefloathtmlScore;
privatefloatavgScore;
privatefloatsumScore;
publicStudent(){};
publicStudent(StringstuId,Stringname,Stringgender,floatjavaScore,floatsqlScore,
floatcScore,floathtmlScore)
{
this.stuId=stuId;
this.name=name;
this.gender=gender;
this.javaScore=javaScore;
this.sqlScore=sqlScore;
this.cScore=cScore;
this.htmlScore=htmlScore;
}
publicfloatgetSumScore(floatjavaScore,floatsqlScore,
floatcScore,floathtmlScore)
{
returnjavaScore+sqlScore+cScore+htmlScore;
}
publicStringgetStuId(){
returnstuId;
}
publicvoidsetStuId(StringstuId){
this.stuId=stuId;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetGender(){
returngender;
}
publicvoidsetGender(Stringgender){
this.gender=gender;
}
publicfloatgetJavaScore(){
returnjavaScore;
}
publicvoidsetJavaScore(floatjavaScore){
this.javaScore=javaScore;
}
publicfloatgetSqlScore(){
returnsqlScore;
}
publicvoidsetSqlScore(floatsqlScore){
this.sqlScore=sqlScore;
}
publicfloatgetcScore(){
returncScore;
}
publicvoidsetcScore(floatcScore){
this.cScore=cScore;
}
publicfloatgetHtmlScore(){
returnhtmlScore;
}
publicvoidsetHtmlScore(floathtmlScore){
this.htmlScore=htmlScore;
}
publicfloatgetAvgScore(){
returnavgScore;
}
}
ps:总分和平均分不需要set,缺少了get平均分部分,懒得写了你仿照总分加上吧,给你个机会
测试类:
publicclassTestStudent{
publicstaticvoidmain(String[]args){
Studentstudent=newStudent("1","name","男",85,74,92,88);
floatsumScore=student.getSumScore(student.getHtmlScore(),
student.getJavaScore(),student.getSqlScore(),student.getcScore());
System.out.println("学生"+student.getName()+"总分为:"+sumScore);
}
}
结果:学生name总分为:339.0
注意确保2个类在一个包下。
相关文章
- 详细阅读
-
用Mixly软件编程时出现上传失败的详细阅读
为什么上传资料老是提示上传失败呢?上传资料老是提示上传失败,有可能是软件安装不正确所导致的,可以把软件卸载之后重新安装,然后重启电脑之后重新上传。上传图片,却提示“上传
-
用java编写有向多段图的最短路径详细阅读
用java怎么用迪杰斯特拉算有向图有权值的最短路径Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心
-
请问电脑编程的未来工资高吗?详细阅读
请问电脑编程的未来工资高吗?就目前来说,IT行业的收入水平总体来说还是比较高的,至少明显高于其他的一些行业,但是在未来,除了一些水平比较高的以外,我觉得那些基础编程的,工资不会
-
国内哪个高校的计算机科学与技术专详细阅读
国内计算机专业哪些学校比较好?您好,目前来说只有教育部于2017年公布的第四轮学科评估报告为唯一的官方学科评估,其余的排名基本上都是社会性质的。而根据这第四轮学科评估报考
- 详细阅读
-
javascript 问题详细阅读
JavaScript问题假如这个外部定义了的话那么他算是全局变量,只是在这个代码块改变了变量值。没有加var声明的浏览器默认全局变量varx=0
functiontest(){
x=10
}
test()
consol -
卡达编程的头像怎么更换啊详细阅读
编程猫怎么改名字和头像?进去编程猫社区,把鼠标指针移到自己的头像上面,然后点击账户设置,就可以修改了更换头像怎么操作直接右键自己的头像 , 点击“更改头像” , 自定义头像、系
- 详细阅读
-
计算机应用技术中,提及企业网络规划详细阅读
计算机网络可以从哪几个方面分类,各分为哪几种类型?计算机网络可按不同的标准进行分类。 (1)从网络结点分布来看,可分为局域网(Local Area Network,LAN)、广域网(Wide Area Network,WA