用JAVA编程 类与对象的基础题

青涩雨灵2022-10-04 11:39:541条回答

用JAVA编程 类与对象的基础题
1、 类与对象的基础题:1)编程实现:以电话Phone为父类(例:电话有本机号码、打电话、接电话等属性和功能,当然还有一些其它的特性),移动电话Mobilephone和固定电话Fixedphone为两个子类,并使移动电话实现接口:可移动Moveable.固定电话又有子类:无绳电话Cordlessphone.设计并定义这几个类,明确它们的继承关系,定义子类时给出子类有别于父类的新特性.2)声明测试类:声明Phone类的数组(含5个元素),生成五个对象存入数组:其中二个Phone类的对象、一个Mobilephone类的对象、一个Fixedphone类的对象和一个Cordlessphone类的对象,打印输出每个对象的某个成员变量.将一个父类的引用指向一个子类对象,用这个塑型后的对象来调用某个方法实现多态性.

已提交,审核后显示!提交回复

共1条回复
飘荡de回忆 共回答了18个问题 | 采纳率94.4%
class Phone{
private String phonenumber;
public void setPhonenumber(String phonenumber){
this.phonenumber=phonenumber;
}
public String getPhonenumber(){
return phonenumber;
}
public void recCall(){
System.out.println("接到一个电话");
}
public void telCall(){
System.out.println("拨出一个电话");
}
}class Fixedphone extends Phone{
private String phonenumber;//号码是私有,设置为private,不可继承
public void recCall(){
System.out.println("以"+this.phonenumber+"呼出了一个电话"); //重载了父类的recCall
}
}class Cordlessphone extends Fixedphone{
private String phonenumber;
public void info(){
System.out.println("这是无绳电话的信息");
}
}interface Moveable{
public void moveinfo();
}class Mobilephone extends Phone implements Moveable{
private String phonenumber;
public void moveinfo(){
System.out.println("我实现了可移动性");
}
}public class PhoneTest{
public static void main(String a[]){
Phone[] p=new Phone[5];
Phone p1=new Phone();
p1.setPhonenumber("123456789");
p[0]=p1;
Phone p2=new Phone();
p2.setPhonenumber("987654321");
p[1]=p2;
Mobilephone mp=new Mobilephone();
mp.setPhonenumber("11111");
p[2]=mp;
Fixedphone fp=new Fixedphone();
fp.setPhonenumber("22222");
p[3]=fp;
Cordlessphone cp=new Cordlessphone();
cp.setPhonenumber("33333");
p[4]=cp;

for(int i=0;i
1年前

相关推荐

用JAVA编程 雨淋湿了小学生算术本上一道题,8个数字只能看清3个(第一个数字虽然模糊不清楚,但可看出不是1):[□×(
用JAVA编程
雨淋湿了小学生算术本上一道题,8个数字只能看清3个(第一个数字虽然模糊不清楚,但可看出不是1):[□×(□3+□)]2=8□□9,确定方框中应是什么数. 谢谢了
人间飞龙1年前1
灵灵的鱼儿 共回答了22个问题 | 采纳率95.5%
没有编译过,如果有什么错误,请自行调试
public class A{
pubic static void main(String args[])
{
for(int a=0;a
java编程,求代码大数学家欧拉在集市上遇到了本村的两个农妇,每人跨着个空篮子。她们和欧拉打招呼说两人刚刚卖完了所有的鸡
java编程,求代码
大数学家欧拉在集市上遇到了本村的两个农妇,每人跨着个空篮子。她们和欧拉打招呼说两人刚刚卖完了所有的鸡蛋。
欧拉随便问:“卖了多少鸡蛋呢?”
不料一个说:“我们两人自己***的,一共卖了150个鸡蛋,虽然我们卖的鸡蛋有多有少,但刚好得了同样的钱数。你猜猜看!”
欧拉猜不出。
另一个补充道:“如果我按她那样的价格卖,可以得到32元;如果她按我的价格卖,可以得到24.5元”。
欧拉想了想,说出了正确答案。

我们不是数学家,懒得列出公式来分析。但计算机可以“***破解”,就是把所有可能情况都试验一遍,撞上为止!请写出每人鸡蛋的数目(顺序不限),用逗号隔开
cliffgrass1年前1
白痴‰ 共回答了14个问题 | 采纳率71.4%
public class Test {
public static void main(String[] args) {
for (int i = 1; i < 150; i++) {
int aCount = i;
int bCount = 150 - i;
int aPrice = 2450 / bCount;
int bPrice = 3200 / aCount;
if (aCount * aPrice == bCount * bPrice) {
System.out.printf("A(Count:%s, Price:%s分)n", aCount, aPrice);
System.out.printf("B(Count:%s, Price:%s分)n", bCount, bPrice);
}
}
}
}求出一组结果。
要求JAVA编程 绘图的不用写了
要求java编程 绘图的不用写了
第一题
编程让计算机自动产生n个随机三位整数,输出结果,求出最大数和最小数,输出结果.
第二题
编写程序用于输出1~100间的整数,并且此整数必须满足:它是3的倍数,但不是5的倍数,也不是9的倍数.求这些的和以及平均数.
第三题
一张单据上有一个5位数的密码1xx23,其中百位和千位数已模糊不清,但知道该数能被57或67除尽.设计一个算法,找出该单据原有可能的密码.
第四题
用绘制图形命令,绘制如下图案:
第五题
使用穷举法输出100以内的所有素数,并输出素数的总数.
第六题
把一元***换成一分、二分、五分硬币(每种至少一枚),有多少种换法?
第七题(
编程计算fibinacci数列问题,要求n的值从键盘输入(文本数据流方式).fibonacci数列:
1,1,2,3,5,8,13,21,34,55,89,144…
第八题
求出满足下列条件的三位自然数,该自然数的各个位数的数字的立方和等于该数本身.
第九题
用方法的调用的形式,求1+2!+3!+...+n!的和(用文本数据流方式输入n)
第十题
用文本数据流的方式输入a、b、c,求一元二次方程的根.
第十一题
有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
第十二题
用文本数据流方式输入n ,用循环语句 求1-3+5-7+9- 11+…+n值.
第十三题
利用随机数生成一个包含n(n
saint08251年前1
凝固的西风 共回答了13个问题 | 采纳率84.6%
//所有题的答案
1.
import java.util.Random;
public class Test33 {
x05public static void main(String[] args) {
x05x05Random rand = new Random();
x05x05int a,b,c;
x05x05int max,min;
x05x05a = rand.nextInt();
x05x05b = rand.nextInt();
x05x05c = rand.nextInt();
x05x05max = a>b?(a>c?a:c):(b>c?b:c);
x05x05min = a
亲们java编程求解答2. 根据类定义语法,定义一个类(不必有实际意义),a) 它有三个域,分别是int,int[]和S
亲们java编程求解答
2. 根据类定义语法,定义一个类(不必有实际意义),
a) 它有三个域,分别是int,int[]和string型。
b) 定义构造函数:1.缺省; 2.初始化int和string两个域; 3.三个域都初始化。
c) 定义三个方法,分别修改三个域。
d) 定义一个方法,输出三个域的值于一行,最后输出一个换行。
4. 写main方法,
a) 根据对象定义和数组定义语法,定义一个对象引用x和一个数组变量y。
b) 根据对象创建表达式和数组创建表达式语法,创建一个对象让x引用它;创建一个3元数组,让y引用它。
c) 使用2.c)中定义的方法,修改对象x,用2.d)定义的方法输出x。比较结果与预期。
d) 使用2.c)中定义的方法,修改对象数组y中每个对象,用2.d)定义的方法输出y的每个元素。比较结果与预期。
e) 排除所有语法错误,然后运行main方法。所有输出与预期一致后,转第5步。
e) 排除所有语法错误,然后运行main方法。所有输出与预期一致后,转第5步。
5. 必须做
a) 观察你的域定义,构造函数定义,方法定义,由此回忆域,构造函数,方法三者定义的一般语法形式。过程是指出每个标识符的作用。
b) 记住类定义语法。明天或后天把它写下来。
6. 运行程序(实验2第1题.txt)。先排除语法错误。
第二题. 定义复数类complex。
1. 给出三个构造函数(参数个数分别是0,1,2),
2. 实现复数的加减乘除四则运算,以及打印一个复数的方法。
3. 写main方法测试。
4. 记下心得。
第四题. 特点:此题目有实际背景,除去求两个数的最大公约数之外,其它方法不需要循环。
定义分数类fraction,包括
1.属性 long a,b;分数的分子和分母。
2.静态方法 :
***(long x,long y),计算x,y的最大公约数。
lcm(long x,long y),计算x,y的最小公倍数。
3.构造函数
public fraction(long x)//分母为1
public fraction(long x,long y)
4.实例方法:
public void yf()//约分当前分数。
public void tf(fraction x)// 通分当前分数和分数x。
public fraction add(fraction x)//返回当前分数与分数x的和。
public fraction diff(fraction x)//返回当前分数与分数x的差。
public fraction multiply(fraction x)//返回当前分数与分数x的积。
public fraction divide(fraction x)//返回当前分数与分数x的商。
public void print()//打印当前分数。
计算x和y的最大公因数的代码段:
long r;
r=x%y;
while(r!=0)
{
x=y;
y=r;
r=x%y;
}
return y;
x,y的最小公倍=x*y/ x,y的最大公约数
第五题.
定义时间类time,包括:
1.属性:int hour,minute,second;表示时分秒。
hour属于[0,23],minute,second属于[0,59]
(注意,time对象既可以表示时刻,也可以表示时间片段)
2.构造函数
public time(int h,int m,int s)
3.静态方法
public int tosecond(time t)//返回时间片段t的秒数。
public time totime(long s)//返回与给定秒数s相同的time值。
4.实例方法
public boolean isafter(time t)//当前时间在时刻t之后。
public boolean isbefore(time t)//当前时间在时刻t之前。
public boolean equals(time t)//当前时间与时刻t相等。
public time after(time t)//返回从当前时间算起,时间t之后的时刻。
public time before(time t)//返回从当前时间算起,时间t之前的时刻。
public time after(int x)//返回从当前时间算起,时间x秒之后的时刻。
public time before(int x)//返回从当前时间算起,时间x秒之前的时刻。
public void print()//打印当前对象表示的时间。
barroom1年前1
arker1 共回答了20个问题 | 采纳率90%
亲 你是城市学院的吧 你是在实验楼205机房上王树义的课吧 在这儿遇到你好巧啊~~
给你一个第三题的答案吧
public boolean online(Beeline ln)// 返回true,当且仅当当前point在直线ln上
{
return ln.passPoint(this);
}
public Beeline line(Point other)// 返回经过当前点和点other的直线
{
// 提示:经过A(x0,y0)和B(x1,y1)的直线方程是: (y1-y0)x-(x1-x0)y+x1*y0-y1*x0=0
return new Beeline((this.y - other.y), -(this.x - other.x), this.x * other.y - this.y
* other.x);

}
public Point intersection(Beeline that)// 求两条直线的交点,即解二元一次方程组。
{
// 提示:方程组a1x+b1y+c1=0,a2x+b2y+c2=0的解是
// x=(b1*c2-c1*b2)/(a1*b2-b1*a2),y=(a2*c1-a1*c2)/(a1*b2-b1*a2)
Double x = (this.b * that.c - this.c * that.b) / (this.a * that.b - this.b * that.a);
Double y = (this.c * that.a - this.a * that.c) / (this.a * that.b - this.b * that.a);
return new Point(x, y);
}
public Beeline vertical(Point x)// 返回经过点x,与当前直线垂直的直线
{
// 实现这个方法
//u,v,w表示 ux+vy+w=0 默认v=1 方便计算
double u = 0, v = 1, w = 0;
u = -(this.a / this.b);
w = -(x.getx() * u) + x.gety() * v;
return new Beeline(u, v, w);
}
JAVA编程练习设计矩形类Ractangle、椭圆形类Ellipse,该两类实现平面图形接口PlaneGraphics.
JAVA编程练习
设计矩形类Ractangle、椭圆形类Ellipse,该两类实现平面图形接口PlaneGraphics.
平面图形接口PlaneGraphics中声明三个抽象方法:
area() 求面积
perimeter() 求周长
print() 输出平面图形的类型(正方形、长方形、园、椭圆)、属性(如正方形输出边长,长方形输出长度与宽度,园输出半径,椭圆输出a轴半径与b轴半径)、面积、周长.
Jennycake1年前1
鱼峰啤酒 共回答了29个问题 | 采纳率96.6%
接口PlaneGraphics:public interface PlaneGraphics
{
public double area();

public double perimeter();

public String print();
}类Ractangle:
public class Ractangle implements PlaneGraphics
{
public double a;
public double b;

@Override
public double area()
{
// TODO Auto-generated method stub
return a * b;
}

@Override
public double perimeter()
{
// TODO Auto-generated method stub
return 2 * (a + b);
}

@Override
public String print()
{
// TODO Auto-generated method stub
return "类型:长方形;属性:长" + a + ",宽" + b + ";面积:" + area() + ";周长:"
+ perimeter();
}

}类Ellipse:public class Ellipse implements PlaneGraphics
{

public double a;
public double b;

@Override
public double area()
{
// TODO Auto-generated method stub
return Math.PI * a * b;
}

@Override
public double perimeter()
{
// TODO Auto-generated method stub
return 0;
}

@Override
public String print()
{
// TODO Auto-generated method stub
return "类型:椭圆;属性:a轴" + a + ",b轴" + b + ";面积:" + area() + ";周长:"
+ perimeter();
}

}正方形类:public class Square extends Ractangle
{
public int a;

@Override
public double area()
{
// TODO Auto-generated method stub
return a * a;
}

@Override
public double perimeter()
{
// TODO Auto-generated method stub
return 4 * a;
}

@Override
public String print()
{
// TODO Auto-generated method stub
return "类型:正方形;属性:边长" + a + ";面积:" + area() + ";周长:" + perimeter();
}

}圆形类:
public class Round extends Ellipse
{
public int r;

@Override
public double area()
{
// TODO Auto-generated method stub
return Math.PI * r * r;
}

@Override
public double perimeter()
{
// TODO Auto-generated method stub
return 2 * Math.PI * r;
}

@Override
public String print()
{
// TODO Auto-generated method stub
return "类型:圆;属性:半径" + a + ";面积:" + area() + ";周长:" + perimeter();
}

}
java编程实现下题...设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同
java编程实现下题...
设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi,且si
wang123451年前1
鱼旦粗面 共回答了14个问题 | 采纳率100%
给个简单的你试试:
public class actionarrange {
public static void main(String []args) {
int start[]={1,3,0,5,3,5,6,8,8,2,12};
int finish[]={4,5,6,7,8,9,10,11,12,13,14};
boolean arrange[]=new boolean[10];
for(int i=0;i
java编程 知道坐标求三角形 做了一部分题目要求写出一个Point(点)类,该类具有x,y(表示点的横、纵坐标)两个属
java编程 知道坐标求三角形
做了一部分题目要求写出一个Point(点)类,该类具有x,y(表示点的横、纵坐标)两个属性,并定义两个构造方法,一个无参数,将x,y均设置为0,另一对坐标值为参数,设置x,y为给定坐标值.该类的show方法输出该点的坐标值.
写一个Line(线)类,该类具有两个点属性p1、p2,有参构造函数(已知直线两个顶点的坐标) ,一个计算两点间距的方法calcLength
写一个三角形类,该类具有三条边属性line1、line2、line3,有参构造函数(已知三角形三个顶点的坐标),计算面积的方法calcArea、计算周长的方法calcPerimeter
编写一个测试Test类
第一部分完成
package aaa;
public class Point {
public double x;
public double y;
public Point(){
x=0;
y=0;
}
public Point (double x,double y){
this.x = x;
this.y = y;
}
public void show(){
System.out.println("点的坐标"+x+","+y+",");
}
第二部分完成
package aaa;
public class line {
Point p1;
Point p2;
public line(double x1,double y1,double x2,double y2){
p1 =new Point (x1,y1);
p2 =new Point (x2,y2);
}
public double CalcLength(){
return Math.sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y));
}
第三部分未完成不会了
Line line1;
Line line2;
Line line3;
public Line (double x1,double y1,double x2,double y2,double x3,double y3);
line1 = new Line(x1,y1,x2,y2)
line2 = new line(x1,y1,x3,y3)
line3 = new line (x2,y2,x3,y3)
银雪孤情1年前1
fengyufan 共回答了11个问题 | 采纳率100%
package aaa;
public class Triangle
{
private Line line1;
private Line line2;
private Line line3;
public Triangle(double x1,double y1,double x2,double y2,double x3,double y3){
this.line1 = new Line(x1,y1,x2,y2);
this.line2 = new Line(x1,y1,x3,y3);
this.line3 = new Line(x2,y2,x3,y3);
}
public double calcArea(){
double a = line1.CalcLength ;
double b = line2.CalcLength ;
double c = line3.CalcLength ;
return sqrt[(1/2)(a+b+c)(a+b-c)(a+c-b)(b+c-a)];
}
public double calcPerimeter(){
double a = line1.CalcLength ;
double b = line2.CalcLength ;
double c = line3.CalcLength ;
return a+b+c;
}
}
----------------------------------------------------
测试类
----------------------------------------------------
package aaa;
public class Test
{
public static void main(String[] args){
Triangle triangle = new Triangle(0,0,4,0,0,5);
System.out.println("三角形的面积为:"+triangle.calcArea());
System.out.println("三角形的周长:"+triangle.calcPerimeter());
}
}
如果有问题可以找我.
java编程:(二)类的继承(二)类的继承1.修改(一)中的Animal类,使它的成员变量name和age能在它的子类中
java编程:(二)类的继承
(二)类的继承
1.修改(一)中的Animal类,使它的成员变量name和age能在它的子类中使用。
2.设计一个Dog类,要求Dog类继承自Animal类。增加一个成员变量:动物的昵称(nickname),并为此成员建立相应的赋值、取值成员函数;增加一个成员函数run( ),其功能是输出:” run by four feet”。
3.设计一个Dog类的测试程序,要求程序的运行结果为:
Mimi is 3 years old. It’s nickname is Baby.
Babyrun by four feet.
Tom is 1 yearold.
Tom can run.
6034880681年前1
cappuccinoanna 共回答了19个问题 | 采纳率94.7%
public class DogTest {
public static void main(String[] args) {
Dog dog = new Dog("Mimi ", "3");
dog.setNickname("Baby");
System.out.println(dog.name + "is" + dog.age + " years old");
System.out.println("It’s nickname is " + dog.getNickname());
Animal animal = new Animal("Tom ", "3");
System.out.println(animal.name + animal.run());
}
}
/**
*
*/
package test;
/**
* @author lilin
*
*/
public class Dog extends Animal {
public Dog(String name, String age) {
super(name, age);
}
private String nickname;
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String run() {
System.out.println("run by four feet");
return null;
}
}
/**
*
*/
package test;
/**
* @author lilin
*
*/
public class Animal {
protected String name;
protected String age;
public Animal(String name, String age) {
this.name = name;
this.age = age;
}
public String run() {
return "can run";
}
}
用java编程写两个类,ClassA属于包package1,ClassA中有一个方法methodA(),该方法输出“I
用java编程
写两个类,ClassA属于包package1,ClassA中有一个方法methodA(),该方法输出“I am methodA() in ClassA.”;ClassB属于包package2,在ClassB的方法methodB()中调用ClassA的methodA()方法,再输出“I am methodB() in ClassB.”。在ClassB的main方法中实例化ClassB,并调用mathodB()方法。
51dongxi1年前1
黑风双煞之陈玄风 共回答了16个问题 | 采纳率87.5%
ClassA.java
----
package package1;
public class ClassA {
public void methodA(){
System.out.println("I am methodA() in ClassA.");
}
}
----ClassB.java
package package2;
import package1.ClassA;
public class ClassB {

public static void main(String args[]){
ClassB b = new ClassB();
b.methodB();
}
public void methodB(){
new ClassA().methodA();
System.out.println("I am methodB() in ClassB.");
}
}
------------------
I am methodA() in ClassA.
I am methodB() in ClassB.
java编程实现如下问题:列出1 至100000 内,所有与数字7 具有关系的数.和7 有关
java编程实现如下问题:列出1 至100000 内,所有与数字7 具有关系的数.和7 有关
系是指:(1)能够被7 整除,比如14;(2)各个数字之和能够被7 整除,比如25;(3)
含有数字7,比如37
G宝贝1年前1
wforest2000 共回答了24个问题 | 采纳率91.7%
………………
老大,给你个思路吧:来个100000次的循环,判断模7(%7)是否为0,是的话放入数组之类的容器;不为0的话,字符串的分割(或者循环除10取模),判断是否有7;否则之和模7
用java编程:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z
用java编程:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z
两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单.有人向队员打听比赛的名单.a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单.
Adelandy1年前1
zmfe 共回答了20个问题 | 采纳率95%
import java.util.ArrayList;
public class aa {
String a,b,c;
public static void main(String[] args) {
String[] op = { "x","y","z" };
ArrayListarrayList=new ArrayList();
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
for (int k = 0; k < 3; k++) {
aa a=new aa(op[i],op[j],op[k]);
if(!a.a.equals(a.b)&&!a.b.equals(a.c)&&!a.a.equals("x")
&&!a.c.equals("x")&&!a.c.equals("z")){
arrayList.add(a);
}
}
for(Object a:arrayList){
System.out.println(a);
}
}
public aa(String a,String b,String c) {
super();
this.a = a;
this.b = b;
this.c = c;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return "a的对手是"+a+","+"b的对手是"+b+","+"c的对手是"+c+"n";
}
}
java编程中new是什么意思 ,他的用法 还有在什么情况下能用到new
thexboy1年前1
f浪迹lmmy 共回答了19个问题 | 采纳率94.7%
范例如下:
A a=new A();
A a=new B();
new可以随时新建,而且可以不定长度
最通俗的解释:
如果造一辆车.
那么类A就是一辆车的图纸,或者说模型
那么new过程,就是在造这辆车.
造成后,就有一辆车a,
那么如果这辆车可以听歌,假设这个听歌功能是个方法 listen();
那么你可以这样调用听歌功能 a.listen();
你滴明白?

大家在问