• 杨其菊201771010134《面向对象程序设计(Java)》第三周学习总结


     《面向对象程序设计(Java)》第三周学习总结

    第一部分:理论知识

     这周课程没有新进度,由于感觉对基础语法的不熟悉,复习了一遍前三章的细碎知识,学到一些之前不知道的原理:

    1.计算机高级语言按程序的方式可以分为两种:编译型和解释型

    编译型:C,C++,Objective-C,Pascal等;

    解释型:Ruby,Python,

    半编译型:Visual Basic,

    java:既是编译型语言又是解释型语言。

    2.classpath 环境变量的设置:如果使用1.5以上的版本,完全可以不用设置这个环境变量,也可以正常的编译和运行程序。

    3.系统变量与用户变量:

    两者本没有太大的区别,只是用户变量只对当前用户有效,而系统变量对所有用户有效。系统变量的路径排在用户变量的路径之前。如果PATH用户变量大的路径里包含了Java命令,而PATH系统变量的路径里包含也包含了java命令,则优先执行PATH系统变量路径包含的java命令。

    4.UML(统一建模语言)简介

    5.基本类型的类型转换

    第二部分:实验部分

     

    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个身份证号,将身份证的年月日抽取出来,按年-月-日格式输出。注意:输入使用ScannernextLine()方法,以免出错。

    输入样例:

    34080019810819327X

    输出样例:

    1981-08-19

     源代码及测试结果如下:

     1 import java.util.Scanner;
     2 
     3 public class BirthDate{
     4 
     5  public static void main(String[] args) {
     6      
     7      String year;
     8      String month;
     9      String day;
    10      String id;
    11        
    12      Scanner reader= new Scanner(System.in);
    13      
    14      System.out.println("请输入你的身份证号码:");
    15      
    16      id=reader.nextLine();
    17    
    18       year=id.substring(6,10);
    19       
    20       month=id.substring(10,12);
    21       
    22       day=id.substring(12,14);
    23       
    24       String outcome=year+"-"+month+"-"+day;
    25       
    26       System.out.println("出生日期:"+outcome);
    27     
    28     
    29  }
    30 }

    实验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)

        (注:下面是我看了几个教学视频后写的,我还没有做出结果来,好像和同学们的大相径庭♦) 

     1  import java.io.BufferedReader;
     2  import java.io.File;
     3  import java.io.FileReader;
     4  import java.io.IOException;
     5  import java.util.ArrayList;
     6  import java.util.Scanner;
     7 
     8 
     9 public class FileRead {
    10 
    11     public static void main(String[] args) throws IOException
    12     {
    13            
    17     FileReader fr=new FileReader("studentfile.txt");
    18    //调用读取流对象的read方法。
    19    //read():一次都一个字符,而且会自动往下读。
    20    int ch=0;
    21    
    22    while((ch=fr.read())!=-1)
    23    { 
    24        System.out.println((char)ch);
    25    }
    26    
    27    /*
    28    while(true)
    29        
    30    {
    31        int ch=fr.read();
    32        if(ch==-1);
    33        break;
    34        System.out.println("ch="+(char)ch);
    35    }
    36        
    37     */   
    38        
    39   fr.close();
    40     }
    41 
    42 }

     第三部分:学习总结:

         本周周四经历了第一次上机小测试,立马被打回原形,果然这门课的所有学习最后都要归结到编程能力的提高上。100分的测试题我得了25分,别说是编程能力的提高,连个结果都没搞出来。够挫败!!!不过也算是一次警示,早些打“预防针”也是好事。在测试中连基本语法知识都生疏,所以有复习了遍前三章的理论知识,还发现了很多之前没意识到的疑惑,很多没听过名词都查了遍资料,之前没在意的基本操作也都动手试了一遍,暴露了很多问题。仅是一些基础的操作都显得如此,别说是脱离去编写程序解决实际问题,想想还得多元的距离,以后必须每周增加代码的阅读量和编辑量,只有在实战中才能有所提升。

       另外,这次的两个课后实验,我只完成了一个且语言不规范,第2个到即将到的截止时间还没做出来,感觉有些泄气,但有难度的才有挑战,有挑战才能有提升。还有API文档也没搞定,本周的学习让我对Java的学习方法有了更深的体会,要练!!!

  • 相关阅读:
    docker知识集锦
    kubernetes知识集锦
    redis知识集锦
    Java多线程知识集锦
    vscode离线安装插件
    jsoncpp的简易教程
    为什么要自动化测试?
    如何选择正确的自动化测试工具
    如何选择测试自动化工具?
    测试自动化的五大挑战
  • 原文地址:https://www.cnblogs.com/yqj-yf-111/p/9655186.html
Copyright © 2020-2023  润新知