• 徐思201771010132《面向对象程序设计(java)》第三周学习总结


    一、理论知识部分

    第一章:Java是一种具有简单性、面向对象、分布式、 健壮性、安全性、体系结构中立、可移植性、解 释型、高性能、多线程、动态性的语言。

    第二章:Java 源程序是以• Java为后缀的文本文件,可以用各种 Java集成 开发环境中的源代码编辑器来编写,也可以用文本编辑工具来编写。

    如果源文件中有多个类,那么只能有一个类是public类。 如果有一个类是public类,那么源文件的名字必须与这个类的 名字完全相同。 源程序文件的扩展名是.java。 如果源文件没有public类,那么源文件的名字只要和某个类的 名字相同,并且扩展名是.java就可以了。

    译后生成目标文件(8位的ASCII码文件)。而Java程序中源代 码经编译生成的目标码为 两个字节的 字节码 (16位) 。

    字节码文件是二进制文件。编译字节码需要使用专用的Java 编译器,在集成化的Java开发环境中,只要选择一个菜单命 令或单击一个按钮就可以完成这个编译过程。而在JDK命令 行开发工具中则需要运行独立的编译程序。

    – 字节码不能直接运行在一般的操作系统平台上, 而必须运行在称为“Java 虚拟机”的在操作系统 之外的软件平台上。运行Java程序时首先应该启 动这个虚拟机,然后由它来解释、执行Java 的字 节码文件。 – 利用Java 虚拟机就可以把Java 字节码程序跟具 体的软、硬件平台分隔开来。

    首先要用Java的编译器对Java的源程序进行 编译,产生字节码文件。 javac MyJavaApplication.java 。Java应用程序是由独立的解释器程序来运行的, 在JDK 软件包中,用来解释执行Java应用程 序字节码的解释器程序为 java MyJavaApplication。

    任何一个Java 程序都是由若干个类定义组成的。 类体中通常有两种组成成分(称为类的成员)  一种是域,包括变量、常量、对象数组等独立的实体; 另一种是方法,是类似于函数的代码单元块。

    方法体部分是由若干以分号结尾的语句组成的并由 一对大括号括起来,注意:方法体内部不能再定义 其他的方法。

    任何一个Java应用程序方法必须有而且只能有一个 main方法,并且这个方法的方法头必须按照下面的格 式来书写: public static void main(String args [ ]) 。第6句是方法的方法体,其中System 是系统内部定义 的一个系统对象;out 是System 对象中的一个域,也 是一个对象;println是 out对象的一个方法,它的作 用是向系统标准输出设备输出其形参指定的字符串, 并回车换行。

    Java Applet 中不需要有main 方法。 Java Applet要求有一个类是系统类applet 的子类, 即必须有一个类的类头部分以 extends Applet 结尾。 其中 extends 表明新定义的类是它后面跟着的已经存 在的父类的子类;Applet 是父类名。

    第三章:标识符由字母、下划线、美元符号和数字组成, 且第一个符号不能为数字。

    Java共有8种基本类型 – 整数类型(int、short、long、byte) – 浮点类型(float、double) – 字符类型 (char) – 布尔类型(boolean )

    Java中没有unsigned类型 。

    Java提供的一个特别运算符 :new这是一个用来创建对象的运算符。 Java另外一个特别运算符 Instanceof 返回一个布尔值来指出某个对象是否是一个特定类或 者是它的子类的一个实例。

    大多数的数值转换是遵循优先级的关系自动完成的。  转换原则如下:  如果两个操作数中有一个是double类型的,则另一个将 会转换成double类型。 否则,如果两个操作数中有一个是float类型的,另一个 将会转换成float类型。 否则,如果两个操作数中有一个是long类型的,另一个 将会转换成long类型。  否则,两个操作数都将转换成int类型。

    程序中需要用到的字符串可以分为两大类: – 创建之后不会再做修改和变动的不可变字符串String类; – 创建之后允许再做更改和变化的构建字符串StringBuilder类。

    注意case子句后的break!!

    数组使用之前要确定大小,可以在程序中根据需要动 态生成数组(如用表达式计算出大小)。 一旦生成数组,大小不可改变。Java不支持变长数组。  数组的属性—length : 数组元素的个数。  Java中的数组作为一种对象类型,可以作为方法的参 数,方法调用时传的是指向数组的引用。  ArrayIndexOutOfBoundsException 异常。

    二、实验部分

    1、实验目的与要求

    (1)进一步掌握Eclipse集成开发环境下java程序开发基本步骤;

    (2)熟悉PTA平台线上测试环境;

    (3)掌握Java语言构造基本程序语法知识(ch1-ch3);

    (4)利用已掌握Java语言基本程序设计知识,学习设计开发含有一个主类、类内可有多个方法的应用程序。

    2、实验内容和步骤

    实验1:采用个人账号登录https://pintia.cn/,使用邀请码588329加入PTA平台NWNU-2017NISE教学班(西北师范大学 计算机科学与工程学院 2017级 网络与信息安全),完成《2018秋季西北师范大学面向对象程序设计(Java)(ch1-ch3)测试题1》,测试时间120分钟;

    实验2:公民身份证号码按照GB11643—1999《公民身份证号码》国家标准编制,由18位数字组成:前6位为行政区划分代码,第7位至14位为出生日期码,第15位至17位为顺序码,第18位为校验码。从键盘输入1个身份证号,将身份证号的年月日抽取出来,按年-月-日格式输出。注意:输入使用Scanner类的nextLine()方法,以免出错。

    输入样例:

    34080019810819327X

    输出样例:

    1981-08-19

    代码如下:

    package Frist;

    import java.util.Scanner;

    public class Frist {

    public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    System.out.print("请输入你的身份证号:");
    String ID=in.nextLine();
    String year=ID.substring(6, 10);
    String month=ID.substring(10,12);
    String day=ID.substring(12,14);
    System.out.println("你的生日:"+year+"-"+month+"-"+day);
    System.out.println("Good luck!");
    }

    }

    实验3:studentfile.txt文件内容是本班同学的学号与姓名,利用此文件编制一个程序,将studentfile.txt文件的信息读入到内存,并提供两类查询功能:(1)输入姓名查询学号;(2)输入学号查询姓名。要求程序具有友好人机交互界面。

    编程建议:

    (1)从文件中读入学生信息,可以编写如下函数:

    public static void StudentsFromFile(String fileName))

    (2)输入姓名查找学生学号,可以编写如下函数:

    public static String findStudent(String name)

    (3)输入学号查找学生姓名,可以编写如下函数:

    public static String findStudent(String ID)

    package Class;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;

    public class Class {

    public static void main(String[] args) {

    int i, j;
    String a;
    BufferedReader str = new BufferedReader(
    new InputStreamReader(System.in));
    System.out.println("请输入学号:");
    a = str.readLine();
    System.out.println("学号为:" + a);
    str = new BufferedReader(new InputStreamReader(System.in));
    System.out.println("请输入姓名:");
    a = str.readLine();
    System.out.println("姓名为:" + a);
    }

    }

    实验总结:

    通过这次小测试,发现自己很多问题,对之前知识的掌握并不是很好,对编程也不太会,之前的学习不是很扎实。通过对之前知识的回顾与复习,查漏补缺,对Java进一步的了解。这次小测试的结果并不是很理想,以后需要花更多的时间学习Java,更好的掌握Java知识。这次实验开始自己编写程序,对程序的编写毫无头绪,通过查阅资料及和同学讨论,最终解决问题。

  • 相关阅读:
    C/C++网络编程2——socket函数
    C/C++网络编程1——linux下实现
    nginx_2_nginx进程模型
    nginx_1_初始nginx
    C++11并发编程4------线程间共享数据
    C++11并发编程3------线程传参
    C++11并发编程2------线程管理
    C++11并发编程1------并发介绍
    打造自己的开发环境
    gcc/g++/make/cmake/makefile/cmakelists的恩恩怨怨
  • 原文地址:https://www.cnblogs.com/sisi-713/p/9657230.html
Copyright © 2020-2023  润新知