请教JAVA题目,谢谢

请教JAVA题目,谢谢,第1张

1、Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。 ( 对 )

2、接口和类一样也可以有继承关系,而且都只能支持单继承。 ( 对 )

3、所有类至少有一个构造器,构造器用来初始化类的新对象,构造器与类同名,返回类型只能为void。 ( 错 )

4、包是按照目录、子目录存放的,可以在程序中用package定义包,若没有package一行,则表示该文件中的类不属于任何一个包。 ( 错 )

5、Java对事件的处理是采用委托方式进行的,即将需要进行事件处理的组件委托给指定的事件处理器进行处理。 ( 对 )

6、在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在前面,子类放在后面。 ( 错 )

7、在实例方法或构造器中,this用来引用当前对象,通过使用this可引用当前对象的任何成员。 ( 错 )

8、我们可以方便地编写Java客户机/服务器程序,在客户机/服务器模式中,客户机一般通过套接字(Socket)使用服务器所提供的服务,Socket由两部分组成:IP地址和端口号。

( 对 )

9、Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。 ( 错 )

10、Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。 ( 错 )

//望采纳,打这么多字不容易

一、问题描述

设计一个宠物商店,在商店中可以有多种宠物,试表示出此种关系,并要求可以根据关键字查找相应的宠物信息。所需要的宠物信息自行设定。

1、可以保存多个宠物的信息

2、宠物的属性:名字、年龄等

3、可以实现宠物上架、下架、模糊查询等功能。

实现思路

1首先需要定义一个宠物类,因为宠物种类有很多,因此需要定义一个抽象类。该类中需要包含宠物的各种信息,例如:种类、名字、年龄、雌雄等。

2有了宠物后还需要定义一个商店类,来存放各种宠物。该商店类可以展示出商店内的宠物信息,以满足用户需求。

3因为要实现宠物的上架和下架 *** 作,因此还需要定义一个上架类和下架类。可以通过该类对宠物进行上架和下架 *** 作,以存放到商店中。

4要实现模糊查询功能,需要定一个查询类,该类可以通过输入关键字来查询商店内的宠物信息来展现出来。

5要实现上诉功能,还需要定义一个测试类,来实现上述 *** 作。

代码实现:

1宠物类

package 宠物商店;

public abstract class 宠物类 {

public String species; //种类

public String name; //名字

public String sex; //雌雄

public int age; //年龄

public 宠物类() {

}

public 宠物类(String species,String name,String sex,int age) {

thisspecies=species;

thisname=name;

thissex=sex;

thisage=age;

}

public abstract void pet1();

public void setspecies(String species) {

thisspecies=species;

}

public String getspecies() {

return species;

}

public void setname(String name) {

thisname=name;

}

public String getname() {

return name;

}

public void setsex(String sex) {

thissex=sex;

}

public String getsex() {

return sex;

}

public void setage(int age) {

thisage=age;

}

public int getage() {

return age;

}

}

2商店类

package 宠物商店;

public class 商店类 extends 宠物类{

public 商店类(String species,String name,String sex,int age) {

super(species, name, sex,age);

}

public void pet1() {

Systemoutprintln("宠物种类:"+species+"\t宠物名称:"+name+"\t宠物性别"+sex+"\t宠物年龄"+age+"岁");

}

static 商店类 doug1=new 商店类("金毛","豆豆","雄性",1);

static 商店类 doug2=new 商店类("牧羊犬","花花","雌性",2);

static 商店类 doug3=new 商店类("泰迪","毛毛","雄性",1);

static 商店类 doug4=new 商店类("二哈","笨笨","雌性",2);

static 商店类 cat1=new 商店类("加菲猫","胖胖","雄性",1);

static 商店类 cat2=new 商店类("波斯猫","玲玲","雌性",2);

}

3下架类

package 宠物商店;

import javautilScanner;

public class 下架类 {

public static void XJ() {

Scanner scanner = new Scanner(Systemin);

Systemoutprintln("现在本店有以下宠物:");

商店类doug1pet1();

商店类doug2pet1();

商店类doug3pet1();

商店类doug4pet1();

商店类cat1pet1();

商店类cat2pet1();

Systemoutprintln("请您选择要下架的宠物名称");

String name = scannernext();

Systemoutprintln("您好,您已成功下架名字为:"+name+"的宠物");

}

}

4上架类

package 宠物商店;

import javautilScanner;

public class 上架类 {

public static String species; //种类

public static String name; //名字

public static String sex; //雌雄

public static int age; //年龄

public static void SJ() {

Scanner scanner = new Scanner(Systemin);

Systemoutprintln("请输入你要上架宠物的种类:");

species=scannernext();

Systemoutprintln("请输入你要上架宠物的名字:");

name=scannernext();

Systemoutprintln("请输入你要上架宠物的雌雄:");

sex=scannernext();

Systemoutprintln("请输入你要上架宠物的年龄:");

age=scannernextInt();

商店类 cw=new 商店类(species,name,sex,age);

Systemoutprintln("恭喜您,您已经成功上架:");

cwpet1();

Systemoutprintln("现在本商店有:");

商店类doug1pet1();

商店类doug2pet1();

商店类doug3pet1();

商店类doug4pet1();

商店类cat1pet1();

商店类cat2pet1();

cwpet1();

}

}

5查询类

package 宠物商店;

import javautilScanner;

public class 查询类 {

public static void CX() {

Scanner scanner = new Scanner(Systemin);

Systemoutprintln("尊敬的顾客您好,我会为您提供最优的服务");

Systemoutprintln("1:查询本店宠物种类\t2:查询本店宠物信息");

int n = scannernextInt();

if(n==1) {

Systemoutprintln("尊敬的顾客,目前本店有:1、宠物狗\t2、宠物猫");

}

if(n==2) {

Systemoutprintln("请输入您要查询宠物的种类信息:");

String name = scannernext();

if(nameequals("狗")||nameequals("gou")) {

Systemoutprintln("本店提供"+name+"的品种为:");

商店类doug1pet1();

商店类doug2pet1();

商店类doug3pet1();

商店类doug4pet1();

}

else if(nameequals("猫")||nameequals("mao")) {

Systemoutprintln("本店提供"+name+"的品种为:");

商店类cat1pet1();

商店类cat2pet1();

}

else {

Systemoutprintln("给常抱歉,本店不能提供你所需要的宠物:"+name);

}

}

}

}

6测试类

package 宠物商店;

import javautilScanner;

public class 测试类 {

public static void main(String[] args) {

Scanner scanner = new Scanner(Systemin);

Systemoutprintln("欢迎来到宠物商店在线系统");

Systemoutprintln("我们将为您提供最优秀的服务,请您做以下选择");

Systemoutprintln("1:员工登录\t2:尊敬的顾客");

int i = scannernextInt();

if(i==1){

Systemoutprintln("亲爱的员工您好,请选择您要进行的 *** 作:");

Systemoutprintln("1:对宠物进行上架 *** 作\t2:对宠物进行下架 *** 作");

int n = scannernextInt();

if(n==1) {

//转到上架类

上架类SJ();

}

if(n==2) {

//转到下架类

下架类XJ();

}

}

if(i==2) {

查询类CX();

}

}

}

import javautilScanner;

public class Test {

public static void main(String[] args) {

int[] bills= {100,50,20,10,5,2,1};

int[] numBills=new int[billslength];

Scanner sc=new Scanner(Systemin);

int amount=scnextInt();

int i=0;

do {

int bill=bills[i];

numBills[i++]=amount/bill;

amount%=bill;

}while(amount>0 && i<billslength);

for(i=0; i<billslength; i++) 

Systemoutprintln(bills[i]+"元:"+numBills[i]+"张");

}

}4582

100元:45张

50元:1张

20元:1张

10元:1张

5元:0张

2元:1张

1元:0张98888

100元:988张

50元:1张

20元:1张

10元:1张

5元:1张

2元:1张

1元:1张

适合整数金额,角分小数的还要稍加修改

3. 下面是一个类的定义程序,请将程序补充完整。

public class Test4_3{

int x,y;

Test4_3 (int i,int j){

x=i;

y=j;

}

}

4

public class Test4_4 {

public static void main(String[] args) {

int n1=2,n2=3;

Test4_4 obj1_1=new Test4_4();

obj1_1method(n1,n2) ;

}

public void method(int x,int y){

Systemoutprintln("2/3="+2/3 );

Systemoutprintln("23="+23 );

}

}

6. 下面程序的功能是通过调用方法max()求给定的三个数的最大值,请将程序补充完整。

public class Test4_6 {

public static void main( String args[] ) {

int i1=1234,i2=456,i3=-987;

int MaxValue;

MaxValue= max(i1,i2,i3);

Systemoutprintln("三个数的最大值:"+MaxValue);

}

public static int max(int x,int y,int z) {

int temp1,max_value;

temp1=x>yx:y;

max_value=temp1>ztemp1:z;

return max_value;

}

5. 下面是一个java应用程序,它的功能是在屏幕上输出26个英文字母,其中每个字母相隔一个制表符, 请将程序补充完整。

public class Test4_5{

public static void main( args[] ) {

char c='a';

for (int i=1;i<=26;i++ ) {

Systemoutprint( c + " ");

c++;

}

}

}

//把你的那个表作成test3txt放到D盘根,跑程序就好了

import javaioBufferedReader;

import javaioFileInputStream;

import javaioInputStreamReader;

import javautilArrayList;

import javautilCollections;

import javautilIterator;

import javautilList;

public class MyTest3 {

List stuInfoList = new ArrayList();

public MyTest3(){

printResult();

}

public void readFile() {

try {

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("d:\\test3txt")));

String line = "";

int i=0;

while ((line = brreadLine()) != null) {

if(i++>0){ //略过头上的汉字行

StudentInfo student = new StudentInfo(linesplit(" "));

stuInfoListadd(student);

}

}

} catch (Exception e) {

eprintStackTrace();

}

}

class StudentInfo implements Comparable{

public int stuId;

public double pings;

public double qizhong;

public double qimo;

public double bishi;

public double zhongFeng;

public StudentInfo(){};

public StudentInfo(String[] info){

thisstuId = IntegerparseInt(info[0]);

thispings = IntegerparseInt(info[1]);

thisqizhong = IntegerparseInt(info[2]);

thisqimo = IntegerparseInt(info[3]);

thisbishi = IntegerparseInt(info[4]);

thiszhongFeng = pings01+qizhong025+qimo015+bishi05;

}

public String getPingJunFeng(int size){

return pings/size +" "+qizhong/size+" "+qimo/size+" "+bishi/size+" "+zhongFeng/size;

}

public String toString(){

return stuId + " " +pings + " "+qizhong+" "+qimo+" "+bishi+" "+zhongFeng;

}

public int compareTo(Object arg0) {

StudentInfo info = (StudentInfo)arg0;

return (int)(infozhongFeng-thiszhongFeng);

}

}

public void printResult(){

readFile();

Systemoutprintln("学号 平时 期中 期末 笔试 总评分");

for(Iterator it=stuInfoListiterator();ithasNext();){

Systemoutprintln(itnext());

}

Systemoutprintln("-----------80分以上---------------\r\n学号 总评分");

for(Iterator it=stuInfoListiterator();ithasNext();){

StudentInfo info = (StudentInfo)itnext();

if(infozhongFeng>=80)

Systemoutprintln(infostuId + " "+infozhongFeng);

}

Systemoutprintln("-----------没有及格---------------\r\n学号 总评分");

for(Iterator it=stuInfoListiterator();ithasNext();){

StudentInfo info = (StudentInfo)itnext();

if(infozhongFeng<60)

Systemoutprintln(infostuId + " "+infozhongFeng);

}

Collectionssort(stuInfoList);

Systemoutprintln("-----------排序之后---------------\r\n学号 平时 期中 期末 笔试 总评分");

for(Iterator it=stuInfoListiterator();ithasNext();){

Systemoutprintln(itnext());

}

StudentInfo pinjunfeng = new StudentInfo();

for(Iterator it=stuInfoListiterator();ithasNext();){

StudentInfo info = (StudentInfo)itnext();

pinjunfengbishi+=infobishi;

pinjunfengpings+=infopings;

pinjunfengqimo+=infoqimo;

pinjunfengqizhong+=infoqizhong;

pinjunfengzhongFeng+=infozhongFeng;

}

Systemoutprintln("-----------平均分---------------\r\n平时 期中 期末 笔试 总评分");

Systemoutprintln(pinjunfenggetPingJunFeng(stuInfoListsize()));

}

public static void main(String[] args) throws Exception {

new MyTest3();

}

}

异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。

摘要:《Java程序员面试指南》第7章异常处理及内存管理,本章讲述的是要想成功地成为一名合格的Java程序员,掌握好异常处理机制是编写大型程序必不可少的基本功。本节为大家介绍异常的处理方式之三:throw。

标签:throw Java 程序员 Java程序员面试指南

Oracle帮您准确洞察各个物流环节

74 异常的处理方式之三:throw(1)

异常的抛出,就是将异常抛给异常处理器,暂时不去处理它。本节主要讲解用throw抛出异常的方式,以及如何由try-catch来接收所抛出的异常。

当一个方法发生异常时可以通过throw关键字来抛出异常,把异常抛给它上一级的调用者,抛出的可以是异常引用,也可以是异常对象,它的语法格式如下:

throw 异常对象名; 或者

throw new 异常类名(); 一条throw语句一旦被执行,程序立即转入相应的异常处理程序段,它后面的语句就不再执行了(这一点类似于return语句),而且它所在的方法也不再返回有意义的值。在一个方法中,throw语句可以有多条,但每一次最多只能执行其中的一条。在一般情况下,throw语句都会写在判断语句块中,以避免每次都执行该语句。

代码剖析下面来看一个例子,也许从中你会明白点什么。具体代码如下:

public class catchThows { static int x; public static void main(String argv[]) { double a = Mathrandom() 10; if (x > 0) Systemoutprintln(a / x); else throw new Exception(); // 抛出异常 } public void setX(int x) { thisx = x; } } 运行结果如图71所示。

(大图)图71 运行结果

从上面的运行结果中可以看出,一个方法中如果使用throw来抛出异常,要么自己捕获它,要么声明抛出了一个异常。要声明抛出了异常,需要用throws关键字在方法的头部声明。如果我们将上面的代码修改成下面的代码,那么结果又会怎样呢?

public class catchThows_1 { static int x; public static void main(String argv[]) { new catchThows()setX(0); double a = Mathrandom() 10; if (x > 0) Systemoutprintln(a / x); else try { throw new Exception();// 抛出异常 } catch (Exception e) { Systemoutprintln("出现异常的原因是:"+egetMessage()); } } public void setX(int x) { thisx = x; } } 运行结果如下:

出现异常的原因是:null 还有一种抛出异常的方法是让被调用的方法表示它将不处理异常,该异常将被抛出到它的调用方法中。这点是和throws声明异常很相似的,但它们的位置是完全不同的。具体代码如下:

public class catchThows_2 { void findThows() { try { //抛出方法 throw new ArithmeticException(); } catch(ArithmeticException ae) { throw ae; } } public static void main(String args[]) { catchThows ct=new catchThows(); //对方法进行异常处理 try { ctfindThows(); } catch(ArithmeticException ae) { Systemoutprintln("出现异常的原因是:"+ae); } } } 运行结果如下:

出现异常的原因是:javalangArithmeticException

责任编辑:云霞 TEL:(010)68476606

回书目 上一节 下一节

上一篇: 73 异常的处理方式之二:throws(2) 下一篇: 74 异常的处理方式之三:throw(2)

相关文章

·75 内存的管理(2)

·74 异常的处理方式之三:throw(2)

·173 Java高级编程试题(1)

·171 Java基础编程试题(6)

·171 Java基础编程试题(5)

频道热门

·自己动手写搜索引擎

·112 编写代码(15分钟)

·111 准备工作环境(10分钟)

·软件调试的艺术

·WCF编程(第2版)

>

以上就是关于请教JAVA题目,谢谢全部的内容,包括:请教JAVA题目,谢谢、java程序设计题,设计一个宠物商店,内有猫和狗两种宠物,研究名字、颜色和年龄等属、JAVA编程题目,求大神解答。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10170545.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存