㈠ 15道基礎的java選擇題
41.C
A.abstract修飾符可修飾欄位、方法和類。 不可以修飾欄位B.抽象方法的body部分必須用一對大括弧{}包住。C.聲明抽象方法不可寫出大括弧。D.聲明抽象方法,大括弧可有可無。
42D
43.A
A.一個程序里只能有一個類被修飾為Public 錯誤B.源文件名必須和用public修飾的類名相同 正確C.若程序中沒有任何Public類,則文件名可任取 正確D.一個Java程序中,必須有一個被Public修飾的類 怎麼說呢?很難說正確,也很難說錯誤,一個java程序是可以沒有一個被修飾為Public的類
44B
A好像也可以
45D
46A
47A
48C
49B
50A
51D
52C
53A
54B
55.A
㈡ 200分求幾道JAVA題,不用編程,給個輸出結果就行~~好的再追加
第一題,x和n從命令行作為參數輸入:
public class Test1{
public static void main(String[] args){
int argLen = args.length;
//判斷是否至少傳入了兩個參數
if (argLen < 2){
System.out.println("請輸入兩個整型參數");
return;
}
int x = 0;
int n = 0;
//轉換傳遞進來的參數,如果輸入的參數不合法,不能轉換為int型,則Integer.parseInt方法會拋出NumberFormatException異常
try{
x = Integer.parseInt(args[0]);
n = Integer.parseInt(args[1]);
}
catch(NumberFormatException e)
{
System.out.println("輸入的參數不是整數");
System.exit(1);
}
//判斷x和n的值是否是正數
if (x<=0 || n<=0)
{
System.out.println("不能輸入負值或0,請輸入兩個正整數");
System.exit(1);
}
//列印轉換後的x和n
System.out.println("你輸入的x和n分別為: " + x + ", " + n);
/*
y=1+x/1+x*x*x/3+......+x^n/n
根據公式計算結果。由於公式中y增長的很快,所以我們定義一個double型的變數存儲結果的值。但仍然很有可能溢出。必要的話可以使用math包中的類來進行任意長度和精度的處理,但這里就不麻煩了。
*/
double y = 1.0;
for (int i=1; i<=n; i+=2)
{
y += Math.pow(x, i)/(double)i;
}
//列印結果
System.out.println("根據公式y=1+x/1+x*x*x/3+......+x^n/n所計算出的結果為: " + y);
} // main()
} /* Test1 */
第二題,需要的test11.html文件內容如下:
<html>
<head>
<title>Test11 demo</title>
</head>
<body>
<applet width="300" height="400" code="Test11.class"></applet>
</body>
</html>
然後使用appletviewer test11.html瀏覽小應用程序(在瀏覽器中可能不能正常運行)。
java代碼如下:
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Label;
public class Test11 extends Applet{
//定義文字所在位置與頂部的距離
private int posY = 200;
private Label textsLabel = new Label("我猜你將看到這句話一直在滾動");
public void init()
{
textsLabel.setBounds(50, 200, 200, 30);
this.add(textsLabel);
//啟動新線程
SecThread st = new SecThread();
st.start();
} // init()
public void paint(Graphics g){
super.paint(g);
} //paint()
//定義一個內部類,以啟動一個新的線程
private class SecThread extends Thread{
public void run()
{
while(true){
//讓當前線程休眠50毫秒,注意sleep方法會拋出InterruptedException異常
try{
Thread.sleep(50);
}
catch(InterruptedException e){
System.out.println("執行過程中出錯");
System.exit(1);
}
//設置文字的新位置
posY -= 5;
//判斷是否小於0(即已經到達頂部),如果小於0則重置為400
posY = (posY<=0?400:posY);
textsLabel.setBounds(50, posY, 200, 30);
Test11.this.repaint();
}
}
}
} /* Test2 */
3, 4兩題實在很簡單,略過了。
找到你的帖子了!
將3,和4也寫一下:
3.運行方法看2:
import java.applet.Applet;
import java.awt.Graphics;
public class Test111 extends Applet
{
public void paint(Graphics g)
{
for (int i=1; i<=10; i++) //畫橫線
{
g.drawLine(20, i*20, 200, i*20);
}
for (int j=1; j<=10; j++) //畫豎線
{
g.drawLine(j*20, 20, j*20, 200);
}
}
}
4. 代碼如下:(你說已經寫好的程序怎麼改成applet。記住一點,applet在運行時自動調用init、start和paint方法,而通常的應用程序調用main方法。只要將main方法中的內容妥善地移到這三個方法中就可以了。但修改的時候要注意,不要引入錯誤。)
//任意輸入三個數,可以有小數,然後比較它們的大小
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Button;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JOptionPane;
public class Test1111 extends Applet
{
public void paint(Graphics g)
{
this.setLayout(null);
Button btn = new Button("開始輸入");
btn.setBounds(100, 130, 100, 30);
btn.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
sort();
}
});
this.add(btn);
}
private void sort()
{
//3個元素的字元串數組,存放輸入的數
String[] numberStrs = new String[3];
for (int i=0; i<numberStrs.length; i++)
{
//如果輸入時按了取消按鈕,則繼續提示輸入
while(numberStrs[i] == null)
{
numberStrs[i] = JOptionPane.showInputDialog("請輸入第 " + (i+1) + " 個數");
}
}
//定義3個元素的double型數組,存放轉換後的值
double[] numbers = new double[3];
try
{
for (int j=0; j<numbers.length; j++)
{
numbers[j] = Double.parseDouble(numberStrs[j]);
}
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null, "輸入的不是數字!"
, "ERROR", JOptionPane.ERROR_MESSAGE);
System.exit(1);
}
String result = "";
result += "你輸入的數字為: ";
for (int k=0; k<numbers.length-1; k++)
{
result += numbers[k] + ", ";
}
result += numbers[numbers.length-1] + "\n";
//簡單點,使用冒泡排序
for (int i=1; i<numbers.length; i++)
{
for (int j=0; j<numbers.length-1; j++)
{
if (numbers[j] > numbers[j+1])
{
double temp = numbers[j];
numbers[j] = numbers[j+1];
numbers[j+1] = temp;
}
}
}
result += "排序後的數字為: ";
for (int k=0; k<numbers.length-1; k++)
{
result += numbers[k] + ", ";
}
result += numbers[numbers.length-1];
//輸出結果
JOptionPane.showMessageDialog(null, result, "Result", JOptionPane.PLAIN_MESSAGE);
}
}
㈢ 5道簡單的JAVA編程題(高分懸賞)
很詳細的幫你寫下,呵呵,所以要給分哦!
1、
(1)源程序如下:
public class One {
public static void main(String[] args) {
String name = "張三";
int age = 23;
char sex = '男';
String myclass = "某某專業2班";
System.out.println("姓名:" + name);
System.out.println("姓名:" + age);
System.out.println("姓名:" + sex);
System.out.println("姓名:" + myclass);
}
}
(2)
編寫完程序的後綴名是.java,如本題,文件名就是One.java。
開始\運行\cmd,進入「命令提示符窗口」,然後用javac編譯器編譯.java文件,語句:javac One.java。
(3)
編譯成功後,生成的文件名後綴是.class,叫做位元組碼文件。再用java解釋器來運行改程序,語句:java One
2、編寫程序,輸出1到100間的所有偶數
(1)for語句
public class Two1 {
public static void main(String[] args) {
for(int i=2;i<=100;i+=2)
System.out.println(i);
}
}
(2)while語句
public class Two2 {
public static void main(String[] args) {
int i = 2;
while (i <= 100) {
System.out.println(i);
i += 2;
}
}
}
(3)do…while語句
public class Two3 {
public static void main(String[] args) {
int i = 2;
do {
System.out.println(i);
i += 2;
}while(i<=100);
}
}
3、編寫程序,從10個數當中找出最大值。
(1)for循環
import java.util.*;
public class Three1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
for (int i = 0; i < 10; i++) {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
}
System.out.println("最大值:" + max);
}
}
(2)while語句
import java.util.*;
public class Three2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
int i = 0;
while (i < 10) {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
i++;
}
System.out.println("最大值:" + max);
}
}
(3)do…while語句
import java.util.*;
public class Three3 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int number;
int max = 0;
int i = 0;
do {
System.out.print("輸入第" + (i + 1) + "個數:");
number = input.nextInt();
if (max < number)
max = number;
i++;
}while(i<10);
System.out.println("最大值:" + max);
}
}
4、編寫程序,計算從1到100之間的奇數之和。
(1)for循環
public class Four1 {
public static void main(String[] args) {
int sum=0;
for(int i = 1;i<=100;i+=2){
sum+=i;
}
System.out.println("1~100間奇數和:" + sum);
}
}
(2)while語句
public class Four2 {
public static void main(String[] args) {
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i += 2;
}
System.out.println("1~100間奇數和:" + sum);
}
}
(3)do…while語句
public class Four3 {
public static void main(String[] args) {
int sum = 0;
int i = 1;
do {
sum += i;
i += 2;
} while (i <= 100);
System.out.println("1~100間奇數和:" + sum);
}
}
5、
(1)什麼是類的繼承?什麼是父類?什麼是子類?舉例說明。
繼承:是面向對象軟體技術當中的一個概念。如果一個類A繼承自另一個類B,就把這個A稱為"B的子類",而把B稱為"A的父類"。繼承可以使得子類具有父類的各種屬性和方法,而不需要再次編寫相同的代碼。在令子類繼承父類的同時,可以重新定義某些屬性,並重寫某些方法,即覆蓋父類的原有屬性和方法,使其獲得與父類不同的功能。另外,為子類追加新的屬性和方法也是常見的做法。繼承需要關鍵字extends。舉例:
class A{}
class B extends A{}
//成員我就不寫了,本例中,A是父類,B是子類。
(2)編寫一個繼承的程序。
class Person {
public String name;
public int age;
public char sex;
public Person(String n, int a, char s) {
name = n;
age = a;
sex = s;
}
public void output1() {
System.out.println("姓名:" + name + "\n年齡:" + age + "\n性別:" + sex);
}
}
class StudentPerson extends Person {
String school, department, subject, myclass;
public StudentPerson(String sc, String d, String su, String m, String n,
int a, char s) {
super(n, a, s);
school = sc;
department = d;
subject = su;
myclass = m;
}
public void output2() {
super.output1();
System.out.println("學校:" + school + "\n系別:" + department + "\n專業:"
+ subject + "\n班級:" + myclass);
}
}
public class Five2 {
public static void main(String[] args) {
StudentPerson StudentPersonDemo = new StudentPerson("某某大學", "某某系別",
" 某專業", "某某班級", " 張三", 23, '男');
StudentPersonDemo.output2();
}
}
㈣ Java經典編程題50道百度網盤地址
這是你要的東西。 拿好
㈤ 求解兩道JAVA作業題!懸賞50,在線等!~
第一題:
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Ex3_1 {
/**
* @param args
*/
public static void main(String[] args) {
char c;
int i=0;
String s="The past is gone and static. Nothing we can do willchange it. " +
"Thefuture is before us and dynamic. Everything we do will affect it.";
System.out.println("請輸入一個字母");
Scanner sc = new Scanner(System.in);
c=sc.next().charAt(0);//輸入單個字元
Pattern p=Pattern.compile(String.valueOf(c));
Matcher m=p.matcher(s);
while(m.find()){
i++;
}
System.out.println("指定字元"+c+"出現的頻率為"+i);
}
}
第二題:
import java.util.Arrays;
public class Ex3_2 {
public static void main(String[] args) {
int[] a = new int[20];
int b=0;
int max=0;
for(int i=0;i<a.length;i++){
a[i]=(int) (Math.random()*99);
}
System.out.println(Arrays.toString(a));
for(int j=0;j<a.length;j++){
for(int k=0;k<j;k++){
if(a[j]>a[k]){
a[k]=a[j];
a[k]=b;
b=a[j];
}
}
}
max=a[0];
Arrays.sort(a);
System.out.println(max);
}
}
㈥ java幾道簡單的選擇題
分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:
(6) 類與對象的關系是( )。
A 類是對象的抽象
B 類是對象的具體實例
C 對象是類的抽象
D 對象是類的子類
(7) 下面程序的輸出結果是( )。
public class Mystery{
public static void main(String args[])
{ int y, x=1, total=0;
while(x<10){
y=x*x;
total+=y;
++x;
}
System.out.println(「Total is 」+total);
}
}
A Total is 285 B Total 385 C Total 384 D Total 545
(8) 以下哪種循環體能保證進入執行( ) 。
A while B for C do – while D 都不是
(9) 設 String s1=」Hello」;
String s2=」World」;
以下哪個方法用來得到字元串「Hello World」。( )
A s2+s1; B s1.concat(s2); C s1.append(s2); D s1.concate(s2);
(10) 完全封裝類的實現細節應該使用訪問許可權( ) 。
A public B default C native D private
(11) 下列程序段的輸出是 ( ) 。
int n=0;
lable: if(n<2){
System.out.println(「n=」+n);
n++;
continue lable;
}
A n=0 n=1 B n=0 C 編譯不能通過 D 都不是
(12) 獲取數組temp的長度用( ) .
A temp.ArraySize; B temp.ArraySize(); C temp.length; D temp.length();
(13) 設tmp是一個數組類成員,以下哪個選項聲明並初始化一個4個元素的數組?( )
A int tmp[]={1,2,3,4}; B int tmp[]=new int[5];
C int tmp[]=new int(5); D int tmp[];
(14) 程序要調用已定義的包中的類時,可用哪種方法?( ) 。
A import 包名 B import 類名 C #include 包名 D #include 文件名
解析:
(6) 類與對象的關系是( )。
A 類是對象的抽象
----------------------------------------
(7) 下面程序的輸出結果是( )。
A Total is 285
----------------------------------------
(8) 以下哪種循環體能保證進入執行( ) 。
C do – while
----------------------------------------
(10) 完全封裝類的實現細節應該使用訪問許可權( ) 。
D private
----------------------------------------
(11) 下列程序段的輸出是 ( )
C 編譯不能通過
continue 只能loop里用
----------------------------------------
(12) 獲取數組temp的長度用( ) .
C temp.length;
----------------------------------------
(13) 設tmp是一個數組類成員,以下哪個選項聲明並初始化一個4個元素的數組?( )
A int tmp[]={1,2,3,4};
----------------------------------------
(14) 程序要調用已定義的包中的類時,可用哪種方法?( ) 。
B import 類名
㈦ java基礎面試題有哪些
下面是10道java基礎面試題,後附答案
1.什麼是 Java 虛擬機?為什麼 Java 被稱作是「平台無關的編程語言」?
Java 虛擬機是一個可以執行 Java 位元組碼的虛擬機進程。Java 源文件被編譯成能被 Java 虛擬機執行的位元組碼文件。
Java 被設計成允許應用程序可以運行在任意的平台,而不需要程序員為每一個平台單獨重寫或者是重新編譯。Java 虛擬機讓這個變為可能,因為它知道底層硬體平台的指令長度和其他特性。
2.「static」關鍵字是什麼意思?Java 中是否可以覆蓋(override)一個 private 或者是static 的方法?
「static」關鍵字表明一個成員變數或者是成員方法可以在沒有所屬的類的實例變數的情況下被訪問。
Java 中 static 方法不能被覆蓋,因為方法覆蓋是基於運行時動態綁定的,而 static 方法是編譯時靜態綁定的。static 方法跟類的任何實例都不相關,所以概念上不適用。
3.JDK 和 JRE 的區別是什麼?
Java 運行時環境(JRE)是將要執行 Java 程序的 Java 虛擬機。它同時也包含了執行 applet 需要的瀏覽器插件。Java 開發工具包 (JDK)是完整的 Java 軟體開發包,包含了 JRE,編譯器和其他的工具(比如:JavaDoc,Java 調試器),可以讓開發者開發、編譯、執行 Java 應用程序。
4.是否可以在 static 環境中訪問非 static 變數?
static 變數在 Java 中是屬於類的,它在所有的實例中的值是一樣的。當類被 Java 虛擬機載入的時候,會對 static 變數進行初始化。如果你的代碼嘗試不用實例來訪問非 static 的變數,編譯器會報錯,因為這些變數還沒有被創建出來,還沒有跟任何實例關聯上。
5.Java 支持的數據類型有哪些?什麼是自動拆裝箱?
Java 語言支持的 8 中基本數據類型是:
byte
short
int
long
float
double
boolean
char
自動裝箱是 Java 編譯器在基本數據類型和對應的對象包裝類型之間做的一個轉化。比如:把 int 轉化成 Integer,double 轉化成 double,等等。反之就是自動拆箱。
6.Java 支持多繼承么?
不支持,Java 不支持多繼承。每個類都只能繼承一個類,但是可以實現多個介面。
7.Java 中,什麼是構造函數?什麼是構造函數重載?什麼是復制構造函數?
當新對象被創建的時候,構造函數會被調用。每一個類都有構造函數。在程序員沒有給類提供構造函數的情況下,Java 編譯器會為這個類創建一個默認的構造函數。
Java 中構造函數重載和方法重載很相似。可以為一個類創建多個構造函數。每一個構造函數必須有它自己唯一的參數列表。
Java 不支持像 C++中那樣的復制構造函數,這個不同點是因為如果你不自己寫構造函數的情況下,Java 不會創建默認的復制構造函數。
8.Java 中的方法覆蓋(Overriding)和方法重載(Overloading)是什麼意思?
Java 中的方法重載發生在同一個類裡面兩個或者是多個方法的方法名相同但是參數不同的情況。與此相對,方法覆蓋是說子類重新定義了父類的方法。方法覆蓋必須有相同的方法名,參數列表和返回類型。覆蓋者可能不會限制它所覆蓋的方法的訪問。
9.介面和抽象類的區別是什麼?
Java 提供和支持創建抽象類和介面。它們的實現有共同點,不同點在於:
介面中所有的方法隱含的都是抽象的。而抽象類則可以同時包含抽象和非抽象的方法。
類可以實現很多個介面,但是只能繼承一個抽象類
類如果要實現一個介面,它必須要實現介面聲明的所有方法。但是,類可以不實現抽象類聲明的所有方法,當然,在這種情況下,類也必須得聲明成是抽象的。
抽象類可以在不提供介面方法實現的情況下實現介面。
Java 介面中聲明的變數默認都是 final 的。抽象類可以包含非 final 的變數。
Java 介面中的成員函數默認是 public 的。抽象類的成員函數可以是 private, protected 或者是 public。
介面是絕對抽象的,不可以被實例化。抽象類也不可以被實例化,但是,如果它包含 main 方法的話是可以被調用的。
10.什麼是值傳遞和引用傳遞?
對象被值傳遞,意味著傳遞了對象的一個副本。因此,就算是改變了對象副本,也不會影響源對象的值。
對象被引用傳遞,意味著傳遞的並不是實際的對象,而是對象的引用。因此,外部對引用對象所做的改變會反映到所有的對象上。
最後祝你面試順利!
㈧ 自動生成50道數學題,每題為3個100以內的加減混合運算。用JAVA 怎麼實現
用for循環50次,用random生成100內的三個隨機數,隨機組合成數學計算題就行了
㈨ 20道JAVA判斷題 求解·~~ 50分
21.正確
22.正確
23.正確
24.可以
25.錯誤
26.不可以
27.正確
28.錯誤
29.錯誤
30.正確
31.錯誤
32.錯誤
33.錯誤
34.正確
34.錯誤
35.正確
36.錯誤
37.正確
38.正確
39.錯誤
40.錯誤