《Java 面向對象編程》 內容由淺入深,緊密結合實際,利用大量典型實例,詳細講解Java面向對象的編程思想、編程語法和設計模式,介紹常見Java類庫的用法,總結Java編程的各種經驗,深入闡述Java虛擬機執行程序的原理。書中實例均基於最新的JDK 1.5版本。全書內容包括面向對象的編程思想、Java語言的基礎知識、異常處理、類與對象的生命周期、多線程、Java集合、輸入/輸出和GUI編程等。其最大特色是以六條主線貫穿全書:面向對象編程思想、Java語言的語法、Java虛擬機執行Java程序的原理、在實際項目中的運用、設計模式和性能優化技巧。
⑵ 解釋下Java 面向對象編程
網路很快的……
java的面向對象:java最基本的特徵之一。對象是java最基本的封裝單位,要求編程時候將對象概括為類,類封裝對象的一些操作和數據。然後運用時候再將類實例化為對象
對象被稱作類的一個實例(Instance),而類是對象的模 版(Template) 類是多個實例的綜合抽象,而實例又是類的個體實物。 由於對象是類的實例,因此在定義對象之前應先定義類。定義了類之後,才 可以在類的基礎上創建對象。
⑶ Java面向對象程序設計實驗
紅線標識位置是庫名而不是表名。
如果有幫助到你,請點擊採納。
⑷ java面向對象編程求幫忙
一共三個類:ScoreArray.java、StudentScoreArray.java和Test1.java,具體為:
public class ScoreArray {
private int[] scores;
private int scoreCount;
public int[] getScores() {
return scores;
}
public int getScoreCount() {
return scoreCount;
}
//構造函數
public ScoreArray(int[] scores) {
this.scores = scores;
for (int score : scores) {
if (score >= 0 && score <= 100) {
this.scoreCount++;
}
}
}
//求最大值
public int getMax() {
int[] scores = this.scores;
int temp;
for (int i = 0; i < scores.length; i++) {
for (int j = 0; j < scores.length - 1 - i; j++) {
if (scores[j] > scores[j + 1]) {
temp = scores[j];
scores[j] = scores[j + 1];
scores[j + 1] = temp;
}
}
}
return scores[scores.length - 1];
}
//求最小值
public int getMin() {
int[] scores = this.scores;
int temp;
for (int i = 0; i < scores.length; i++) {
for (int j = 0; j < scores.length - 1 - i; j++) {
if (scores[j] > scores[j + 1]) {
temp = scores[j];
scores[j] = scores[j + 1];
scores[j + 1] = temp;
}
}
}
return scores[0];
}
//求均值
public double getAvg() {
int sum = 0;
for (int score : this.scores) {
sum += score;
}
return new BigDecimal(sum).divide(
new BigDecimal(this.scores.length),
2, BigDecimal.ROUND_HALF_UP).doubleValue();
}
//排序
public void sort() {
int temp;
for (int i = 0; i < this.scores.length; i++) {
for (int j = 0; j < this.scores.length - 1 - i; j++) {
if (this.scores[j] > this.scores[j + 1]) {
temp = this.scores[j];
this.scores[j] = this.scores[j + 1];
this.scores[j + 1] = temp;
}
}
}
}
//靜態說明類
public static void explain() {
System.out.println("本類[ScoreArray]實現了數組的:求最值[getMax()]、求均值[getAvg()]和排序[sort()]方法");
}
}
public class StudentScoreArray extends ScoreArray {
public StudentScoreArray(int[] scores) {
super(scores);
}
//統計
public void statistic() {
super.sort();
Map<Integer, Integer> map = new LinkedHashMap<>();
for (int i : super.getScores()) {
if (map.containsKey(i)) {
map.put(i, map.get(i) + 1);
} else {
map.put(i, 1);
}
}
map.forEach((k, v) -> System.out.println("分數為[" + k + "]的人數為:[" + v + "]"));
}
//靜態說明類
public static void explain() {
System.out.println("本類[StudentScoreArray]實現了數組的:求最值[getMax()]、求均值[getAvg()]、排序[sort()]和分布統計[statistic()]方法");
}
}
public class Test1 {
public static void main(String[] args) {
int[] scores = {59, 60, 82, 58, 71, 99, 0, 59, 65};
ScoreArray scoreArray = new ScoreArray(scores);
ScoreArray.explain();
System.out.print("數組內容:[");
for (int i : scoreArray.getScores()) {
System.out.print(i + " ");
}
System.out.println("]");
System.out.println("有效值個數:" + scoreArray.getScoreCount());
System.out.println("最大值:" + scoreArray.getMax());
System.out.println("最小值:" + scoreArray.getMin());
System.out.println("平均值:" + scoreArray.getAvg());
scoreArray.sort();
System.out.print("排序後數組內容:[");
for (int i : scoreArray.getScores()) {
System.out.print(i + " ");
}
System.out.println("]");
System.out.println("");
System.out.println("========華麗的分割線========");
System.out.println("");
StudentScoreArray studentScoreArray = new StudentScoreArray(scores);
StudentScoreArray.explain();
System.out.print("數組內容:[");
for (int i : studentScoreArray.getScores()) {
System.out.print(i + ",");
}
System.out.println("]");
System.out.println("有效值個數:" + studentScoreArray.getScoreCount());
System.out.println("最大值:" + studentScoreArray.getMax());
System.out.println("最小值:" + studentScoreArray.getMin());
System.out.println("平均值:" + studentScoreArray.getAvg());
studentScoreArray.sort();
System.out.print("排序後數組內容:[");
for (int i : studentScoreArray.getScores()) {
System.out.print(i + " ");
}
System.out.println("]");
System.out.println("分數分布統計:");
studentScoreArray.statistic();
}
}
其中對StudentScoreArray類我要特別說明一下:
統計分布情況時,使用了Map,map是一種key-value的數據結構,其有個特點被我所利用:一個map中只能同時存在一個key,所以我以分數為key,以數量為value,遍歷分數數組時,如果是第一次遇到這個key(分數),則將其value(數量)置為1;如果已經不是第一次遇見了,則將其value(數量)置為value + 1(數量 + 1)。另外需要遍歷這個map實現統計結果的列印,我這里使用了java8以後才支持的Lambda表達式,所以你要運行這個程序必須要使用jdk1.8以上的版本。如果你覺得這樣不妥,可以網上再搜一下map的遍歷方式。
運行結果:
測試用例都使用的數組:int[] scores = {59, 60, 82, 58, 71, 99, 0, 59, 65};
⑸ 什麼是java面向對象編程
面向對象編程(oop)旨在將現實世界中的概念模擬到計算機中,它將現實世界中的所以事物視作對象。對象是存在的具體實體,具有明確定義的狀態和行為。
⑹ Java面向對象程序編程
publicstaticvoidmain(Stringargs[]){
Scannerscanner=newScanner(System.in);
System.out.println("請輸入一個開始數字:");
inta=0;
try{
a=scanner.nextInt();
}catch(Exceptione){
System.out.println("輸數字不合法");
return;
}
System.out.println("請輸入一個結束數字:");
intb=0;
try{
b=scanner.nextInt();
}catch(Exceptione){
System.out.println("輸數字不合法");
return;
}
intsum=0;
if(a>b){
for(inti=b;i<=a;i++){
sum=sum+i;
}
}else{
for(inti=a;i<=b;i++){
sum=sum+i;
}
}
System.out.println(sum);
}
⑺ java程序實驗十一 面向對象 實驗目的: 數組及集合的使用及實現; 要求: 掌握數組及集合操作的
packagecom;
importjava.util.*;publicclassStudent{
privateStringname;
privateStringid;
privatedoublesumscore;
publicStudent(Stringname,Stringid,doublesumscore){
this.name=name;
this.id=id;
this.sumscore=sumscore;
}
publicStringtoString(){
return"name:"+getName()+"id:"+getId()+"sumscore:"+getSumscore();
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetId(){
returnid;
}
publicvoidsetId(Stringid){
this.id=id;
}
publicdoublegetSumscore(){
returnsumscore;
}
publicvoidsetSumscore(doublesumscore){
this.sumscore=sumscore;
}
publicstaticvoidmain(String[]args){
Student[]s={newStudent("A","1",12),newStudent("B","2",22),newStudent("C","3",32),
newStudent("D","4",142),newStudent("E","5",152),newStudent("F","6",262),newStudent("G","7",72),
newStudent("H","8",182),newStudent("I","9",92),newStudent("J","10",102)
};
s=bubbleSort(s);
Vector<Student>vector=newVector<Student>();
vector.addAll(Arrays.asList(s));
for(Iterator<Student>iter=vector.iterator();iter.hasNext();)
{
Studentstudent=iter.next();
System.out.println(student.toString());
}
List<Student>list=newArrayList<Student>();
list=Arrays.asList(s);
for(Studentstr:list){
System.out.println(str.toString());
}
Hashtable<Integer,Student>table=newHashtable<Integer,Student>();
for(inti=0;i<s.length;i++){
table.put(i,s[i]);
}
for(inti=0;i<s.length;i++){
System.out.println(table.get(i).toString());
}
}
publicstaticStudent[]bubbleSort(Student[]args){//冒泡排序演算法
Studenttemp;
for(inti=0;i<args.length-1;i++){
for(intj=i+1;j<args.length;j++){
if(args[i].getSumscore()>args[j].getSumscore()){
temp=args[i];
args[i]=args[j];
args[j]=temp;
}
}
}
returnargs;
}
}
//樓主,說實話你的要求真多,而且分少~~~~
⑻ java面向對象編程
建個資料庫學生表,java鏈接資料庫對其進行操作,很多方法可以實現(mybatis,ibatis,jdbc),顯示在頁面就可以了
⑼ 用java進行面向對象編程,面向對象是什麼意思,請通俗一點解釋
通俗一點說就是你可以設定一個類,比如汽車類Car。汽車有很多屬性,比如顏色color,品牌brand。
然後呢,你new一個對象出來。Car myCar=new Car()
類具體到某一個特定的個體的時候,就是一個對象了。
我們可以給myCar設定顏色和品牌,還可以讓它干好多別的事情。
再說人類。人類是一個很大的群體,但是特定到某一個人,比如你,比如我,比如小明,張三,李四,每個特定的人,都是一個對象,他屬於「人」這個類
你先明白java中類的概念。類具體到某個實例,就是對象了