zoukankan      html  css  js  c++  java
  • 《JAVA程序设计》_第三周学习总结

    20175217吴一凡

    一、IDEA学生免费版申请后续

    • 收到这个邮件,就说明你申请成功了,点这里进去就行了
    • 点击接受
    • 在下一个界面登录你之前注册的账号绑定许可证就行了,重新登录你的账号就有了一年的许可证


    二、答疑中发现的问题

    • 包含多个源文件的java程序必须在源文件所在目录中进行编译执行,否则会出现找不到类的问题,如下图:

    三、第四章学习总结

    1.编程语言的几个发展阶段——4.1知识

    • 面向机器语言:
      机器语言:针对不同机器编写诸如1010101这样的指令序列
      汇编语言:用简单的记忆符号来代替二进制指令,但汇编语言仍是面向机器语言,需要针对不同机器编写不同的代码
      习惯上称机器语言、汇编语言为低级语言
    • 面向过程语言
      把代码组成叫做过程或函数的块,每个块的目标是完成某个任务,使用这些语言编写代码指令时,不必再考虑机器指令的细节,只要按照某种具体语言的语法去编写源文件
      C语言
      Fortran语言
    • 面向对象语言
      最核心的内容是“对象”,一切围绕着对象
      需要完成某种任务时,首先要想到,谁去完成任务,即哪个对象去完成任务:提到数据,首先想到这个数据是哪个对象的。
      特征:封装性、继承、多态

    2.类——4.2知识

    • 类是java语言中最重要的“数据类型”,类声明的变量称作对象变量,简称对象
    class 类名 {       //类的声明
    类体的内容        //类体
    }
    
    • 类声明:
      1.如果类名使用拉丁字母,首字母大写
      2.类名最好容易识别、见名知意。
    • 类体
      1.描述对象的属性和行为:
      变量、方法
      2.下面的Lader类,声明变量部分声明了4个float型变量:above、bottom、height和area;定义了两个方法:float computerArea()和void setHeight(float h)
    class Lader {
    float above;
    float bottom;
    float height;
    float area;
    float computerArea() {
    area=(above+bottom)*height/2.0f;
    return area;
    }
    void setHeight(float h) {
    height = h;
    }
    }
    
    • 成员变量
      1.在整个类内都有效,其有效性与它在类体中书写的先后位置无关
      2.编程风格
      (1)一行只声明一个变量
      (2)首单词首字母小写,其他单词首字母大写
      (3)变量名见名知意,不要用n1、m1、1与l不相邻
    • 局部变量
      (1)只在方法、循环体、复合语句内有效
      (2)没有默认值,旭保证其有具体的值
    • 区别成员变量与局部变量
      如果局部变量名与成员变量相同,则成员变量会隐藏,如果想使用隐藏的成员变量,需要用this.变量名
    • 注意
      对成员变量的操作只能在方法体中

    3.构造方法与对象的创建——4.3知识

    • 构造方法
      1.是类中的特殊方法,创建对象时会调用构造方法,方法名与类名相同,没有类型,可有多个构造方法,但参数不同(个数、类型)
      2.如果无构造方法,系统会默认一个空的构造方法
    • 创建对象
    类的名字 对象名字;
    对象名字=new 类的名字();
    

    4.类与程序的基本结构——4.4知识

    • java应用程序由若干个类组成,这些类可以在一个源文件中,也可以分散在若干个源文件中
    • 将源文件保存在同一个文件夹中,分别编译通过
    • 尽管一个java源文件中可以有多个类,但仍提倡在一个源文件中只编写一个类

    5.参数传值——4.5知识

    • 可变参数
    public int getSum(int... x) {//x是可变参数的参数代表
    int sum=0;
    for(int i=0;i<x.length;i++) {
    sum=sum+x[i];
    }
    return sum;
    }
    

    getSum(203,178,56,2098)返回203、178、56、2098的求和结果
    可变参数for语句的特殊用法:

    for(声明的变量:参数代表){
    ...
    }
    

    eg:

    for(int i:x){
    sum=sum+i;
    }
    

    6.对象的组合——4.6知识

    • 特点
      (1)当前对象对所包含的对象的方法的细节一无所知
      (2)当前对象随时可以更换所包含的对象
      (2)改变引用对象的值,包含对象的值也改变
      (3)改变所包含对象的引用不改变已传递过去的引用
      如下图:

      利用组合可模拟手机和SIM卡的组合关系,如下图:

    7.实例成员与类成员——4.7知识

    1.用关键字static给予修饰的称作类变量,否则称作实例变量
    2.区别:
    (1)不同对象的实例变量互不相同
    (2)所有对象共享类变量
    (3)通过类名直接访问类变量
    如下图所示:

    3.实例方法和类方法
    (1)类方法有static,实例方法没有
    (2)通过类名调用类方法
    (3)类方法不能操作实例变量

    8.方法重载——4.8知识

    1.重载满足的条件:

    • 参数的个数不同
    • 参数个数相同,类型不同
      如下图:

    9.this关键字——4.9知识

    • 在构造方法中的this关键字代表所创建的对象,如下图:
    • 当this关键字出现在实例方法中时,表示调用该方法的当前对象
      (1)实例方法中操作成员变量
    this.成员变量;
    

    (2)实例方法中操作类变量

    类名.类变量
    
    • 可省略,但实例成员变量名与局部变量名重复时就不可省略

    10.包——4.10知识

    • 包语句
    package 包名;
    package sun.com.cn;     //suncomcn
    
    • 有包名的类的存储目录:编译生成的字节码必须存在包名目录下,源文件无所谓,如:
    package tom.jiafei;
    

    应将编译成成的字节码文件保存在目录tomjiafei

    • 运行有包名的主类
      要到tomjiafei的上一层目录中运行主类,假设tomjiafei的上一层目录是1000,则运行格式:
    java tom.jiafei.主类名;
    

    具体例子如下图:

    11.import语句——4.11知识

    • 引入类库中的类,必须使用import语句
    • import语句必须写在packag语句与源文件中类的定义之间
    import java.util.*;     //引入java.util中所有的类
    import java.util.Date;        //引入java.util包中的Date类
    

    如下图引入Date类:

    • 引入自定义包中的类
    import sohu.com.*;
    

    • 要在包的上一层目录进行编译和运行
    javac  xxx/xxx/主类名.java
    java xxx.xxx.主类名
    

    如下图:

    12.访问权限——4.12知识

    • private修饰符(私有变量、私有方法)
      该修饰符修饰的方法、变量不能直接访问(面向对象的编程提倡通过方法来操作变量)
    • public修饰符(共有变量、方法)
      该修饰符修饰的变量、方法可随意访问
    • 无修饰符(友好变量、方法)
      在一个包中可以访问,不在一个包不可访问
    • protected修饰符(受保护的变量、方法)
      同“友好”(区别在子类)
    • public类与友好类
      public修饰的是public类,无修饰符的是友好类,public类可任意创建对象,而友好类只能在同一包中创建对象。

    四、脚本截图(一周学习)


    五、学习总结

    • 第四章出现了许多新的C语言中没有的东西,也是体现其面向对象编程特点的东西,虽然寒假提前看过一点,但学起来还是有一些吃力的,学到周末才基本把所有东西搞懂,嗯,下周继续加油!
    • 码云链接
  • 相关阅读:
    Zookeeper实战
    Zookeeper的结构和命令
    Zookeeper中的选举机制
    du 命令,对文件和目录磁盘使用的空间的查看
    rm命令
    linux之cp/scp命令+scp命令详解
    android 为应用程序创建桌面快捷方式技巧分享
    对自己的文件使用keystore签名
    Android 打包签名 从生成keystore到完成签名 -- 转
    Android App启动错误的问题(connection to the server was unsuccessful)
  • 原文地址:https://www.cnblogs.com/wyf20175217/p/10526312.html
Copyright © 2011-2022 走看看