![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
Java代码g.drawLine(100,100,100,100)
A.画一个圆
B.画一条线段
C.画一个点
D.代码是错误的
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
A.画一个圆
B.画一条线段
C.画一个点
D.代码是错误的
第1题
程序代码如下:
(1)Java.awt.Graphics;
(2)Java.applet.Applet;
// ////////////////////////////////////////////
// Display y=sin(x)
public class J_DrawSin (2) Applet
{
public void paint(Graphics g)
{
double d, tx;
int x, y, x0, y0;
d=Math.PI/100; // Set step(Set the unit in x direction)
x0=y0=0;
(3)(tx=0, x=20; tx<2*Math.PI; tx+=d,x++)
{
y=120-(int)(Math.sin(tx)*50+60);
if(x>20)
g.drawLine(x0, y0, x, y);
x0=x;
y0=y;
}
g.drawstring("y=sin(x)", 10, 70);
} //End of method: paint
} //End of class: J_HelloApplet
<!-----------------------AppletExample.html------------------->
<HTML>
<HEAD>
<TITLE>
An applet Example ---- Hello Applet!
</TITLE>
</HEAD>
<BODY>
<(4)CODE="J_DrawSin.class" WIDTH=300 HEIGHT=120>
</APPLET>
</BODY>
</HTML>
把所缺代码补充完整。
第2题
【说明】
现要编写一个画矩形的程序,目前有两个画图程序:DP1和DP2,DP1用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2则用drawline(x1,x2,y1,y2)画一条直线。当实例画矩形时,确定使用DP1还是DP2。
为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为Bridge(桥接)模式。图9-6显示了各个类间的关系。
这样,系统始终只处理3个对象:Shape对象、Drawing对象、DP1或DP2对象。以下是 Java语言实现,能够正确编译通过。
【Java代码】
//DP1.java文件
public class DP1{
static public void draw_a line(double x1,double y1,
double x2,double y2){
//省略具体实现
}
}
//DP2.java文件
public class DP2{
static public void drawline(double x1,double y1,
double x2,double y2){
//省略具体实现
}
}
//Drawing.java文件
(1) public class Drawing{
abstract public void drawLine(double x1, double y1, double x2, double y2);
}
//V1Drawing.java文件
public class V1Drawing extends Drawing{
public void drawLine(double x1, double y1, double x2, double y2){
DP1.draw_a_line(x1,y1,x2,y2);
}
}
//V2Drawing.java文件
public class V2Drawing extends Drawing{
public void drawLine(double x1,double y1,
double x2, double y2)(//画一条直线
(2);
}
}
//Shape.java文件
abstract public class Shape{
abstract public void draw();
private (3) _dp;
Shape(Drawing dp){
_dp=dp;
}
protected void drawLine(double x1,double y1,
double x2, double y2){
(4);
}
}
//Rectangle.java文件
public class Rectangle extends Shape{
private double_x1,_x2,_y1,_y2;
public Rectangle(Drawing dp,
double x1,double y1,
double x2,double y2){
(5);
_x1=x1;_x2=x2;
_y1=y1;_y2=y2;
}
public void draw(){
//省略具体实现
}
}
第3题
import java.applet.*;
import java.awt.*;
public class MyApplet extends Applet
{
AA s;
public void int()
{
s = new AA("Hello!", "I love JAVA.");
}
public void paint(Graphics g)
{
g.drawString(s.toString(), 30, 50);
}
}
class AA
{
String s1;
String s2;
AA(String str1, String str2)
{
s1 = str1;
s2 - str2;
}
public String toString()
{
return s1 + s2;
}
}
运行后,窗口上将会出现什么,选择一个正确答案______。
A.Hello!
B.I love JAVA.
C.Hello! I love JAVA.
D.什么都没有
第4题
import java .awt.*;
import java .applet.*;
public class SayHi extends Applet{
public void【 】(Graphics g){
g .drawString(“Hi!”20,20);
}
}
第5题
【说明】
Stack类是java. ntil包中专门用来实现栈的工具类。以下Java程序是一个不使用库函数而实现字符串反转的程序。例如,输入:123456,则输出:654321:输入:asdfeg,则输出:gefdsa。
【Java程序】
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class UseStack extends Applet implements ActionListener
{ Stack MyStack;
Label prompt=new Label("输入要反转字符:");
Button pushBtn=new Button("压栈");
Button popBtn=new Button("弹栈"); //反转
TextField input=new TextField(5);
int[] DrawStack =new int[10]; //记录堆栈中数据
int[] PoppedOut=new int[20]; //记录被弹出的数据
int StackCnt=0; //记录模拟堆栈的数组中的数据个数
String msg=" ";
public void init()
{ MyStack=new Stack();
add(prompt);
add(input);
add(pushBtn);
add(popBtn);
pushBtn.addActionListener(this);
(1)
}
public void paint(Graphics g)
{ for (int i=10; i<StackCnt; i++) //模拟显示堆栈内部的数据排列情况
{ g.drawRect(50,200-i*20,80,20);
g.drawString(Integer.toString(DrawStack[i]),80,215-i*20);
}
for (int i=0;(2) ) //显示被弹出的数据
g.drawString(Integer.toString(PoppedOut[i]),200+i*20,100);
g.drawString("堆栈",70,236);
g.drawString("栈底",135,225);
g.drawString("栈顶",160,225-StackCnt*20);
g.drawString(msg,200,140);
}
public void actionPerformed( (3) )
{ if (e.getAct ionCommand () == "压栈") //压栈操作
{ if(StackCnt<10)
{ MyStack.push(new Integer( (4) ));
DrawStack[StackCnt++]=Integer.parseInt(input.getText() );
input.setText (" ");
}
else
msg="输入数据过多,请先弹栈!"
}
else if (e.getActionCommand () == "弹栈") //弹栈操作
{ if( (5) )
{ StackCnt--;
PoppedOut[PopCnt++]=[(Integer)(MyStack.pop())).intValue();
}
else
msg="堆栈已空,不能再弹栈!";
}
repaint();
}
}
第6题
import java.awt.*;
import java.applet.*;
public class Hello extends Applet{
public void______(Graphics g){
g.drawString("How are you!", 10, 10);
}
}
A) repaint
B) println
C) paint
D) show
A.
B.
C.
D.
第7题
A.repaint
B.println
C.paint
D.show
第8题
A.repaint
B.println
C.paint
D.show
第9题
Import java. awt. *;
Import java. applet. *;
Public class Greeting extends applet{
Public void 【 8 】 (Graphics g) {
g.drawSting( “ how are you! ” ,10,10);
}
}
第10题
importjava.applet.*;
importjava.awt.*;
publicclassHelloWofil______{
publicvoidpaint(Graphicsg){
g.drawstring("HelloWorld!",25,25);
}
}
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!