徐思201771010132 《面向对象程序设计(java)》课程学习总结
1、实验目的与要求
(1) 综合掌握java基本程序结构;
(2) 综合掌握java面向对象程序设计特点;
(3) 综合掌握java GUI 程序设计结构;
(4) 综合掌握java多线程编程模型;
(5) 综合编程练习。
2、实验内容和步骤
任务1:填写课程课后调查问卷,网址:https://www.wjx.cn/jq/33108969.aspx。
任务2:综合编程练习
练习1:设计一个用户信息采集程序,要求如下:
(1) 用户信息输入界面如下图所示:
(1)用户点击提交按钮时,用户输入信息显示控制台界面;
(2)用户点击重置按钮后,清空用户已输入信息;
(3)点击窗口关闭,程序退出。
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.*; import javax.swing.*;public class DemoJFrame {public static void main(String[] args) {EventQueue.invokeLater(() -> {JFrame frame = new FrameTest();frame.setTitle("Students Detail");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);});} }class FrameTest extends JFrame {private JPanel panel;private JTextField fieldname;private JTextField fieldadress;private JRadioButton male, female;private ButtonGroup bg;private JLabel jPanel;private JCheckBox reading, singsing, dancing;private JComboBox<String> JComboBox;private JButton validate, reset;public FrameTest() {setSize(700, 500);panel = new JPanel();panel.setLayout(null);bg = new ButtonGroup();male = new JRadioButton("Male", false);male.setBounds(150, 330, 80, 50);female = new JRadioButton("Female", false);female.setBounds(150, 300, 80, 50);bg.add(male);bg.add(female);addJLabel("sex:", 100, 300);addJLabel("name:", 100, 50);addJLabel("address:", 100, 150);addJLabel("Qualification:", 400, 50);addJLabel("Hobby:", 400, 150);fieldname = new JTextField();fieldname.setBounds(150, 70, 120, 30);fieldname.setVisible(true);fieldadress = new JTextField();fieldadress.setBounds(150, 160, 130, 100);fieldadress.setVisible(true);reading = new JCheckBox("Reading");reading.setBounds(450, 160, 100, 30);singsing = new JCheckBox("dancing");singsing.setBounds(450, 180, 100, 30);dancing = new JCheckBox("singing");dancing.setBounds(450, 200, 100, 30);JComboBox = new JComboBox<>();JComboBox.addItem("初中");JComboBox.addItem("高中");JComboBox.addItem("大学");JComboBox.setBounds(500, 65, 100, 20);validate = new JButton("提交");validate.setBounds(200, 400, 100, 35);reset = new JButton("重置");reset.setBounds(400, 400, 100, 35);validate.addActionListener(new Action1());reset.addActionListener(new Action2());panel.add(reading);panel.add(singsing);panel.add(dancing);panel.add(validate);panel.add(reset);panel.add(JComboBox);panel.add(fieldname);panel.add(fieldadress);panel.add(male);panel.add(female);add(panel);}public void addJLabel(String n, int a, int b) {jPanel = new JLabel(n);jPanel.setBounds(a, b, 100, 50);panel.add(jPanel);}private class Action1 implements ActionListener {public void actionPerformed(ActionEvent event) {System.out.println("name:" + fieldname.getText() + "\n" + "address:" + fieldadress.getText());System.out.println("Qualification:" + JComboBox.getSelectedItem());System.out.println("Hobby:");if (reading.isSelected() == true)System.out.print(reading.getText());if (singsing.isSelected() == true)System.out.print(singsing.getText());if (dancing.isSelected() == true)System.out.print(dancing.getText());System.out.println("\n" + "sex:");if (male.isSelected() == true)System.out.println(male.getText());if (female.isSelected() == true)System.out.println(female.getText());}}private class Action2 implements ActionListener {public void actionPerformed(ActionEvent event) {fieldname.setText(null);fieldadress.setText(null);reading.setSelected(false);singsing.setSelected(false);dancing.setSelected(false);bg.clearSelection();JComboBox.setSelectedIndex(0);}} }
DemoJFrame
练习2:采用GUI界面设计以下程序:
l 编制一个程序,将身份证号.txt 中的信息读入到内存中;
l 按姓名字典序输出人员信息;
l 查询最大年龄的人员信息;
l 查询最小年龄人员信息;
l 输入你的年龄,查询身份证号.txt中年龄与你最近人的姓名、身份证号、年龄、性别和出生地;
l 查询人员中是否有你的同乡。
l 输入身份证信息,查询所提供身份证号的人员信息,要求输入一个身份证数字时,查询界面就显示满足查询条件的查询结果,且随着输入的数字的增多,查询匹配的范围逐渐缩小。
package ID;import java.awt.*; import javax.swing.*;/*** @version 1.34 2015-06-12* @author Cay Horstmann*/ public class button {public static void main(String[] args) {EventQueue.invokeLater(() -> {JFrame frame = new Main();frame.setTitle("身份证");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);});} }
button
package ID;public class Person implements Comparable<Person> {private String name;private String ID;private int age;private String sex;private String birthplace;public String getname() {return name;}public void setname(String name) {this.name = name;}public String getID() {return ID;}public void setID(String ID) {this.ID = ID;}public int getage() {return age;}public void setage(int age) {this.age = age;}public String getsex() {return sex;}public void setsex(String sex) {this.sex = sex;}public String getbirthplace() {return birthplace;}public void setbirthplace(String birthplace) {this.birthplace = birthplace;}public int compareTo(Person o) {return this.name.compareTo(o.getname());}public String toString() {return name + "\t" + sex + "\t" + age + "\t" + ID + "\t" + birthplace + "\n";} }
Person
package ID;import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.FileNotFoundException; import java.io.IOException; import java.util.*; import java.awt.*; import javax.swing.*; import java.awt.event.*;public class Main extends JFrame {private static ArrayList<Person> personlist;private static ArrayList<Person> list;private JPanel panel;private JPanel buttonPanel;private static final int DEFAULT_WIDTH = 600;private static final int DEFAULT_HEIGHT = 300;public Main() {personlist = new ArrayList<>();Scanner scanner = new Scanner(System.in);File file = new File("身份证号.txt");try {FileInputStream fis = new FileInputStream(file);BufferedReader in = new BufferedReader(new InputStreamReader(fis));String temp = null;while ((temp = in.readLine()) != null) {Scanner linescanner = new Scanner(temp);linescanner.useDelimiter(" ");String name = linescanner.next();String ID = linescanner.next();String sex = linescanner.next();String age = linescanner.next();String place = linescanner.nextLine();Person Person = new Person();Person.setname(name);Person.setID(ID);Person.setsex(sex);int a = Integer.parseInt(age);Person.setage(a);Person.setbirthplace(place);personlist.add(Person);}} catch (FileNotFoundException e) {System.out.println("查找不到信息");e.printStackTrace();} catch (IOException e) {System.out.println("信息读取有误");e.printStackTrace();}JPanel panel = new JPanel();panel.setLayout(new BorderLayout());JTextArea jt = new JTextArea();panel.add(jt);add(panel, BorderLayout.CENTER);JPanel buttonPanel = new JPanel();buttonPanel.setLayout(new GridLayout(1, 7));JButton jButton = new JButton("字典排序");JButton jButton1 = new JButton("年龄最大和年龄最小");JLabel lab = new JLabel("你的老乡");JTextField jt1 = new JTextField();JLabel lab1 = new JLabel("查找年龄相近的:");JTextField jt2 = new JTextField();JLabel lab2 = new JLabel("输入你的身份证号码:");JTextField jt3 = new JTextField();JButton jButton2 = new JButton("退出");jButton.setBounds(110, 90, 40, 50);jButton1.setBounds(110, 90, 40, 50);jt1.setBounds(110, 90, 40, 50);jt2.setBounds(110, 90, 40, 50);jt3.setBounds(110, 90, 40, 50);jButton2.setBounds(110, 90, 40, 50);jButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {Collections.sort(personlist);jt.setText(personlist.toString());}});jButton1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {int max = 0, min = 100;int j, k1 = 0, k2 = 0;for (int i = 1; i < personlist.size(); i++) {j = personlist.get(i).getage();if (j > max) {max = j;k1 = i;}if (j < min) {min = j;k2 = i;}}jt.setText("年龄最大:" + personlist.get(k1) + "年龄最小:" + personlist.get(k2));}});jButton2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {dispose();System.exit(0);}});jt1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {String find = jt1.getText();String text = "";String place = find.substring(0, 3);for (int i = 0; i < personlist.size(); i++) {if (personlist.get(i).getbirthplace().substring(1, 4).equals(place)) {text += "\n" + personlist.get(i);jt.setText("老乡:" + text);}}}});jt2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {String yourage = jt2.getText();int a = Integer.parseInt(yourage);int near = agenear(a);int value = a - personlist.get(near).getage();jt.setText("年龄相近:" + personlist.get(near));}});jt3.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {list = new ArrayList<>();Collections.sort(personlist);String key = jt3.getText();for (int i = 1; i < personlist.size(); i++) {if (personlist.get(i).getID().contains(key)) {list.add(personlist.get(i));jt.setText("你可能是:\n" + list);}}}});buttonPanel.add(jButton);buttonPanel.add(jButton1);buttonPanel.add(lab);buttonPanel.add(jt1);buttonPanel.add(lab1);buttonPanel.add(jt2);buttonPanel.add(lab2);buttonPanel.add(jt3);buttonPanel.add(jButton2);add(buttonPanel, BorderLayout.SOUTH);setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);}public static int agenear(int age) {int min = 53, value = 0, k = 0;for (int i = 0; i < personlist.size(); i++) {value = personlist.get(i).getage() - age;if (value < 0)value = -value;if (value < min) {min = value;k = i;}}return k;}}
Main
练习3:采用GUI界面设计以下程序
l 编写一个计算器类,可以完成加、减、乘、除的操作
l 利用计算机类,设计一个小学生100以内数的四则运算练习程序,由计算机随机产生10道加减乘除练习题,学生输入答案,由程序检查答案是否正确,每道题正确计10分,错误不计分,10道题测试结束后给出测试总分;
l 将程序中测试练习题及学生答题结果输出到文件,文件名为test.txt。
package math;import java.awt.Dimension; import java.awt.EventQueue; import java.awt.Toolkit;import javax.swing.JFrame;public class math {public static void main(String args[]) {Toolkit t = Toolkit.getDefaultToolkit();Dimension s = t.getScreenSize();EventQueue.invokeLater(() -> {JFrame frame = new main();frame.setBounds(0, 0, (int) s.getWidth() / 2, (int) s.getHeight() / 2);frame.setTitle("算术测试");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);});}}
math
package math;import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.FileNotFoundException; import java.io.PrintWriter; import java.util.Collections; import java.util.Scanner;import javax.swing.*;import java.math.*;public class main extends JFrame {private String[] c = new String[10];private String[] c1 = new String[10];private int[] list = new int[10];int i = 0, i1 = 0, sum = 0;private PrintWriter out = null;private JTextArea text, text1;private int counter;public main() {JPanel Panel = new JPanel();Panel.setLayout(null);JLabel JLabel1 = new JLabel("");JLabel1.setBounds(500, 800, 400, 30);JLabel1.setFont(new Font("Courier", Font.PLAIN, 20));JButton Button = new JButton("生成题目");Button.setBounds(50, 150, 150, 50);Button.setFont(new Font("Courier", Font.PLAIN, 20));Button.addActionListener(new Action());JButton Button2 = new JButton("确定答案");Button2.setBounds(300, 150, 150, 50);Button2.setFont(new Font("Courier", Font.PLAIN, 20));Button2.addActionListener(new Action1());JButton Button3 = new JButton("读出文件");Button3.setBounds(500, 150, 150, 50);Button3.setFont(new Font("Courier", Font.PLAIN, 20));Button3.addActionListener(new Action2());text = new JTextArea(30, 80);text.setBounds(30, 50, 200, 50);text.setFont(new Font("Courier", Font.PLAIN, 30));text1 = new JTextArea(30, 80);text1.setBounds(270, 50, 200, 50);text1.setFont(new Font("Courier", Font.PLAIN, 30));Panel.add(text);Panel.add(text1);Panel.add(Button);Panel.add(Button2);Panel.add(Button3);Panel.add(JLabel1);add(Panel);}private class Action implements ActionListener {public void actionPerformed(ActionEvent event) {text1.setText("");if (i <= 10) {int a = (int) Math.round(Math.random() * 100);int b = (int) Math.round(Math.random() * 100);int m = (int) Math.round(Math.random() * 3);switch (m) {case 0:while (a % b != 0) {a = (int) Math.round(Math.random() * 100);}while (b == 0) {b = (int) Math.round(Math.random() * 100);}c[i] = (i + ":" + a + "/" + b + "=");list[i] = Math.floorDiv(a, b);text.setText(i + ":" + a + "/" + b + "=");i++;break;case 1:c[i] = (i + ":" + a + "*" + b + "=");list[i] = Math.multiplyExact(a, b);text.setText(i + ":" + a + "*" + b + "=");i++;break;case 2:c[i] = (i + ":" + a + "+" + b + "=");list[i] = Math.addExact(a, b);text.setText(i + ":" + a + "+" + b + "=");i++;break;case 3:while (a < b) {b = (int) Math.round(Math.random() * 100);a = (int) Math.round(Math.random() * 100);}c[i] = (i + ":" + a + "-" + b + "=");text.setText(i + ":" + a + "-" + b + "=");list[i] = Math.subtractExact(a, b);i++;break;}}}}private class Action1 implements ActionListener {public void actionPerformed(ActionEvent event) {if (i < 10) {text.setText(null);String z = text1.getText().toString().trim();int a = Integer.parseInt(z);if (text1.getText() != "") {if (list[i1] == a)sum += 10;}c1[i1] = z;i1++;}}}private class Action2 implements ActionListener {public void actionPerformed(ActionEvent event) {try {out = new PrintWriter("text.txt");} catch (FileNotFoundException e) {// TODO Auto-generated catch block e.printStackTrace();}for (int counter = 0; counter < 10; counter++) {out.println(c[counter] + c1[counter]);}out.println("成绩" + sum);out.close();}} }
main
任务3:本学期课程已结束,请汇总《面向对象程序设计课程学习进度条》的数据,统计个人专业能力提升的数据。并从学习内容、学习方法、学习心得几个方面进行课程学习总结,也希望你对课程的不足提出建议和意见
总结:JAVA特点:简单的、面向对象的、分布式的、强壮的、安全的、体系结构中立的、可移植的、解释型的、高性能的、多线程的、动态的语言。
源文件的命名规则:如果源文件中有多个类,那么只能有一个类是 public类。如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了。
Java流程控制语句:控制语句: if语句, switch语句.循环语句 :while , do…while ,for break和continue语句 :break——跳出switch结构;终止并跳出循环体。continue——结束本次循环。
类体内容由两部分构成:类成员变量:用来刻画类属性;类成员方法:用来刻画类内操作。
局部变量:在方法体中定义的变量和方法的参数被称为局部变量。类成员变量和局部变量的区别:类成员变量在整个类内都有效,局部变量只在定义它的方法内有效。如果局部变量的名字与成员变量的名字相同,则成员变量被隐藏。
类成员方法:方法的定义包括两部分:方法声明和方法体。构造方法:名字必须与类名完全相同,没有返回值类型;构造方法可以重载;每个类至少有一个构造方法,若程序员没有定义构造方法,系统会自动产生一个默认构造方法,这个默认构造方 法无参数,方法体为空;程序员为类定义了构造方法,系统就不再提供默认构造方法;用途:初始化类对象。
方法重载:一个类中可以有多个具有相同的名字的方法。但这些方法或者是参数的个数不同,或者是参数的类型不同。
创建对象需两个步骤:对象声明和为对象分配内存。
Static关键字:用static修饰的成员变量称为类(静态)变量,用static修饰的方法称为类(静态)方法。实例变量和类变量的区别:如果类的成员变量有类变量,那么该类所有对象的类变量内存是相同的。具有访问权限的类变量可以通过某个对象访问,也可以通过类名访问。具有访问权限的实例变量仅可以通过对象访问,不能使用类名访问。实例方法和类方法的区别:实例方法可以被类创建的任何对象调用执行。类方法不仅可以被类创建的任何对象调用执行,也可以直接通过类名调用
this关键字:this表示类的当前对象。this可以出现在实例方法和构造方法中,但不可以出现在类方法中。this关键字出现在构造方法中时,代表使用该构造方法所创建的对象。this出现在类的实例方法中时,代表正在调用该方法 的当前对象。
实现类继承的方式:在类的声明中,通过使用关键字extends来创建一个类的子类。Java只支持单继承,不允许多继承 。Java允许有多层继承。
方法重写是指:子类中定义一个方法,这个方法的名字、返回类型、参数个数和类型与从父类继承的方法完全相同。子类重写父类,被重写的方法不能比父类拥有更严格的访问权限
super关键字:子类中访问父类中被隐藏的成员变量,super.成员变量,子类调用父类中的方法。调用父类中的特定构造方法 super() ,调用父类中被重写的方法 super.方法()
多态性有两种表现形式:①方法的多态性(方法重载)②对象的多态性。对象多态性是在继承应用上的一种扩展
final关键字:final关键子可修饰类、方法成员、成员变量和方法中的参数。final类不能被继承,即不能有子类。方法被修饰为final方法,则这个方法不能被重写。一个成员变量被修饰为final的,就是常量,常量必须 赋给初值,而且不能再发生变化。方法的参数被修饰为final的,该参数的值不能被改变。
抽象类:用关键字abstract修饰的类称为abstract类(抽象类)。 abstract类不能被实例化; abstract类可以有abstract方法;对于abstract方法,只允许声明,不允许实现,且要用 abstract关键字进行修饰;抽象类的子类必须重写所有的抽象方法。
接口的声明与使用:关键字interface来定义一个接口。接口的定义与类的定义相似,包括接口的声明和接口体。接口体中包含常量定义和抽象方法定义两部分。接口使用规则:一个类可以实现多个接口;如果一个类使用了某个接口,那么这个类必须实现该接口的所有方法,即为这些方法提供方法体。
方法的权限访问修饰符: public,protected ,default(不加访问说明符时), private。方法的其它修饰符 static ,final ,abstract ,synchronized。
类和类之间关系:is a: 继承,实现关系。has a: 组合,聚合,关联关系。use a: 依赖关系
抛出异常:throws语句是在方法的声明中使用来抛出异常,用来指定方法可能抛出异常,但不想在当前方法中处理这个异常。throw语句是在方法体内使用抛出异常类的对象,程序在执行到throw语句时立即终止,它后面的语句都不执行。要捕捉throw抛出的异常,则必须使用try-catch语句。
Java中的每个事件类都有一个相应的监视器接口,接口中声明了一个或多个抽象的事件处理 方法。如果一个类实现事件监视器接口,其对象就可以作为对应事件的监视器,具备监视和处理事件的能力。
多线程机制是Java语言的重要特征之一,使用多线程技术可以使系统同时运行多个执行体,加快程序的响应时间,提高计算机资源的利用率。使用多线程技术可以提高整个应用系统的性能。
程序、进程与线程的区别:程序是一段静态的代码,它是应用软件执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的执行单位,一个进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条线索,即每个线程也有它自身的产生、存在和消亡的过 程,也是一个动态的概念。
多线程和多任务:多线程和多任务是两个既有联系又有区别的概念。多任务是针对操作系统而言的,代表着操作系统可以同时执行的程序个数;多线程是针对一个程序而言的,代表着一个程序内部可以同时执行的线程个数,而每个线程可以完成不同的任务。
线程的状态与生命周期:新建:当一个Thread类或其子类的对象被声明并创建时,新生的线程对象处于新建状态。此时它已经有了占用内存空间和其他资源的资格。运行:线程创建之后就具备了运行的条件,一旦轮到它来享用CPU资源时,即JVM将CPU使用权切换给该线程时,此线程的就可以脱离创建它的主线程独立开始自己的生命周期了(即run方法执行的过程)。阻塞:有3种原因的阻塞:等待阻塞:执行了wait() 方法;同步阻塞:获取synchronized同步锁失败;其他阻塞:执行了sleep()、join()方法;终止:run方法结束。
创建线程的方式有两种:通过创建Thread类的子类来实现;通过实现Runnable接口的类来实现。
Thread的子类创建线程的关键操作:设计Thread的子类,重写父类的run方法,用Thread类或子类创建线程对象,使用start方法启动线程,JVM将CPU使用权切换给线程时,自动执行 run方法。
通过Runnable接口实现多线程的关键操作:设计一个实现Runnable接口的类,重写run方法;以该类的对象为参数建立Thread类的对象;调用Thread类对象的start方法启动线程,将执行权转交到run方法。
经过一学期Java课的学习,对Java这门语言有了进一步的认识,但学习Java之路还很漫长。老师的教学方式对我们学习Java有很大的帮助,也感谢助教在百忙之中抽时间为我们解疑。
转载于:https://www.cnblogs.com/sisi-713/p/10194232.html
徐思201771010132 《面向对象程序设计(java)》课程学习总结相关推荐
- java日历程序设计,《面向对象程序设计》课程设计---java日历
<面向对象程序设计>课程设计---java日历 软软 件件 学学 院院 课程设计课程设计报告书报告书 课程名称课程名称 面向对象程序设计课程设计面向对象程序设计课程设计 设计题目设计题目 ...
- 201771010118马昕璐《面向对象程序设计java》第八周学习总结
第一部分:理论知识学习部分 1.接口 在Java程序设计语言中,接口不是类,而是对类的一组需求描述,由常量和一组抽象方法组成.Java为了克服单继承的缺点,Java使用了接口,一个类可以实现一个或多个 ...
- 计算机JAVA相关说课稿_面向对象程序设计-java说课稿
面向对象程序设计-java说课稿 面向对象程序设计-JAVA说课稿,计算机系 毕景霞,目录,一.说教材 二.说教学目标 三.说重点难点 四.说教学方法 五.说教学内容 六.教学效果及总结,(一)教材的 ...
- 【Java】《面向对象程序设计——Java语言》Castle代码修改整理
前言 最近闲来无事刷刷MOOC,找到以前看的浙大翁凯老师的<面向对象程序设计--Java语言>课程,重新过一遍仍觉受益颇深. 其中有一个Castle的例子,思路很Nice但代码很烂,翁凯老 ...
- java面向对象期末考试试题_《面向对象程序设计——java》期末考试试题2008a卷.doc...
<面向对象程序设计--java>期末考试试题2008a卷.doc 还剩 6页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 第 7 页 共 ...
- 面向对象程序设计——Java语言 第3周编程题 查找里程(10分)
面向对象程序设计--Java语言 第3周编程题 查找里程(10分) 题目内容 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. ...
- java程序设计清考_面向对象程序设计(Java)-题库
<面向对象程序设计(Java)-题库>由会员分享,可在线阅读,更多相关<面向对象程序设计(Java)-题库(33页珍藏版)>请在金锄头文库上搜索. 1.面向对象程序设计 (ja ...
- 一些关于Java课程学习下来的心得
本学期是大三下学期,学校开设了Java课程,对于学习过C语言,Python两种语言的我,对于Java的总结基本可以浓缩成:比C语言丰富,但是比Python格式要求高,但是多种语言容易混淆,这次总结作业 ...
- 《面向对象程序设计》课程设计
一.课程设计题目 结合实际,用面向对象程序设计的思想设计一个应用实例,要求用到下面设计要求中提到的知识点5个以上. 二.设计要求 通过此次课程设计,更好地掌握面向对象程序设计的基本概念及编程方法,进一 ...
- 《2018面向对象程序设计(java)课程学习进度条》
学习收获最大的程序阅读或编程任务 课堂/课余学习时间(小时) 发布博客/评论他人博客数量 (阅读/编写)代码行数 周次 九九乘法表 ...
最新文章
- 企业架构:现代数据架构的特征
- Java线程详解(10)-volatile关键字
- 【小练习06】HTML+CSS--教学大讲堂
- 盘点2021年Linux界的12件大事
- 击败特斯拉!它拿下全球电动车型销量冠军,但售价仅是Model 3的零头
- HTML中行内元素与块级元素的区别:
- 那些月入5000的人,凭什么比你更早买房买车?
- 【python|opencv】cv2.imread返回None,无法正确读取图片
- 唯一索引和普通索引的区别
- 关于keil注册机的问题
- 毕业设计专用 完全开源 基于Java的房屋租赁管理系统
- C++车辆管理系统课程设计
- 简述计算机键盘上shift键的作用,电脑Shift键作用大全
- 寒霜朋克计算机丢失,寒霜朋克无法进入游戏解决方法 寒霜朋克无法进入游戏怎么办...
- 用proteus来看二极管的压降
- 什么是ColdFusion
- OpenStack入门到实战视频教程全集下载(罗勇老师经典教程系列)
- ubuntu18.0安装搜狗输入法无法显示中文
- 基于标记的分水岭分割算法
- MySQL 测试数据(附开源网站)
热门文章
- linux的网易云音乐界面不显示,linux mint19.1解决网易云音乐安装后打不开的问题...
- Java四大元注解介绍
- K3 CLOUD库存管理关账与存货核算关账区别
- 从一个骗人的技术说起光线追踪——光影技术的里程碑
- 视频分配器中提高信号完整性的方法
- VScode使用markdown
- WIN 10 系统Alt + Tab 切换窗口卡顿问题结局方案
- 机器学习入门之线性回归(1)- 单特征(python实现)
- 裁判文书网爬虫(2019.5.15更新)
- Android 实现计时器功能,Android计时器的三种实现方式(Chronometer、Timer、handler)...