教材学习内容总结

编程语言发展的几个阶段

  • 面向机器语言
  • 面向过程语言
  • 面向对象语言
封装性
继承性
多态性

类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成的。

类是Java语言中最基本的“数据类型”,类封装这数据和对数据的操作。

类声明的变量被称作对象变量,简称变量。

  • 类声明 (public) class PeopleChina
  • 类体:变量声明(属性)+方法(行为)

(1)成员变量:变量声明部分声明的变量,有效范围整个类和书写位置无关。

(2)方法:定义方法

方法体:局部变量和语句构成

参数在方法内有用

方法体内声明的是局部变量,只在方法内有效与书写位置有关

局部变量与成员变量同名:成员变量被隐藏暂时失效。

局部变量没有默认值。

构造方法与对象的创建

构造方法的名字和类名一样,没有类型

(1)默认的构造方法,如果不定义构造方法,系统提供默认的构造方法。

(2)自定义构造方法,自定义的多个构造方法必须参数不同,个数不同,或对应的某个参数类型不同。
创建变量

(1)声明对象
类的名字 对象名字

(2)为声明的对象分配变量。

用new运算符号和构造方法

使用对象

避免使用空对象,不要让空对象去访问变量或方法

对象的引用和实体
对象本身存放着引用,自己可以操作分配自己的变量,调用类提供的方法分配给对象的变量称作对象的实体

两个类型相同的对象,如果二者的引用相同,那么二者就具有完全相同的实体。

类与程序的基本结构

将应用程序涉及的Java源文件保存在相同的目录下,分别编译、运行主类

参数传值

传值机制:方法中参数变量的值是调用者制定的值的拷贝

基本数据类型参数的传值:向该参数传递的值得级别不可以高于该参数的级别

引用类型参数的传值:类型相同两个数组,一旦引用相同,就有一样的单元,一样的实体。

可变参数:在声明方法时不给出参数列表中从某项开始直至最后一项的名字和个数。

对象的组合

组合和复用:“黑盒”复用,当前对象随时可以更换所包含的内容,属于弱耦合关系。

实例成员与类成员

实例变量和类变量的声明:static 修饰的是类变量,没有static修饰的是实例变量。

实例变量和类变量的区别:

  • 不同对象的实例变量互不相同
  • 所有对象共享类变量
  • 通过类名直接访问类变量,实例变量不能用类名访问,只能用对象访问

实例方法和类方法的定义:static区分

实例方法和类方法的区别:

  • 对象调用实例方法,只能对象来调用,实例方法可以操作实例成类变量。
  • 类名调用类方法,对象也能调用,类方法只能操作类变量
  • 设计类方法的原则:算法不需要操作成员变量,就可以考虑将这样的算法写成类方法。

方法重载

一个类中可以有多个方法具有相同的名字,但这些方法的参数必须相同

避免重载出现歧义:重载方法之间必须保证相互的参数不同。

this关键字

this可以出现在实例方法和构造方法中,但不可以出现在类方法中

在构造方法中使用this:代表使用该构造方法所创建的对象

在实例方法中使用this:只能通过对象来调用,代表正在调用该方法的对象。

包语句: package

有包名的类的存储目录:例:package tom.package ---->c:\1000\tom\jiafei

运行有包名的主类:例:java tom.jiafei.主类名

访问权限

访问权限指对象是否可以通过“.”运算符来操作自己的变量或通过“.”运算符调用类中的方法。

私有变量和私有方法:用关键字private修饰,如果类中的某个成员是私有类变量或方法,那么在另外一个类中,不能通过此类名来操作这个私有类变量或类方法。

共有变量和共有方法:public修饰,如果类中的某个成员是public类变量或方法,那么在另外一个类中,能通过此类名来操作这个私有类变量或类方法。

友好变量和友好方法:不用private,public,protected修饰的变量和方法。如果类中创建了一个对象,若在同一个包中,那么在另外一个类中,能通过此类名来操作这个私有类变量或类方法。

受保护的成员变量和方法:用protected来修饰

基本类型的类封装

Java提供与基本数据类型相关的类,实现了对基本数据类型的封装。

对象数组

数组的元素是对象

Student [] stu;
stu=new Student[10];

文档生成器
使用jdk提供的javadoc.exe可以制作文件类结构的html格式文档

代码调试中的问题和解决过程

问题1::调试老师所给程序时产生如图问题

解决办法:复制时误把数字复制进去,删掉即可

问题2:

解决办法:lader.above和lader.bottom的l应该小写,误打成大写了

问题3:

解决方法:没有把他们放在同一个目录下于是运行失败,放在同一个目录下就好了

代码托管

学习进度条

  代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时  
第一周 31/31 1/1 8/8  
第二周 250/281 1/2 8/16  
第三周 586/867 1/3 15/31  

20175224 2018-2019-2 《Java程序设计》第三周学习总结的更多相关文章

  1. Java程序设计第三周学习总结

    1. 本周学习总结 2. 书面作业 Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...

  2. 对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈

    对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈 一:教学中存在的学习问题 “1.由于同学们平时练习不足,上课总是出现跟不上老师的节奏的现象. 2.个别同学上课不认真听讲,打开 ...

  3. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  4. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  5. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

随机推荐

  1. hadoop配置项笔记 - streaming

    stream.map.input.ignoreKey 作用:是否忽略key,只传递值. 默认值:false 我的设置:按需要更改 stream.map.input.field.separator st ...

  2. SVN导出差异版本更新的文件列表

    对于在服务器上没有使用版本控制的运维人员来说,每次SVN修改的文件都需要查看更改日志,一个个查找出来再更新到服务器,过程实在是痛苦 那么有没有一种方法跑个命令比对一下版本就哗啦啦的把修改好的文件复制出 ...

  3. Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法

    一.执行命令报错 在Ubuntu16.04下,使用如下命令,修改hosts主机文件,居然提示权限错误: catty@node186:~$ sudo cat <<EOF > /etc/ ...

  4. 2018-2019-2 网络对抗技术 20165303 Exp6 信息搜集与漏洞扫描

    实践内容 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口扫描.OS及服务版本探测.具体服务的查点(以自己主机为目标) (4)漏洞扫描:会扫,会看报告, ...

  5. Exception in thread "main" SettingsException[Failed to load settings from [elasticsearch.yml]]; nested: ElasticsearchParseException[malformed, expected end of settings but encountered additional conte

    D:\elasticsearch\elasticsearch-2.4.0\bin>elasticsearchException in thread "main" Settin ...

  6. 【Intellij Idea】Intellij Idea 光标问题即默认改写模式以及部分快捷键失效

    一.出现原因: 是因为Intellij Idea安装了IdeaVim插件 二.解决办法: 把ideavim 这个插件停了或卸了,就可以了

  7. imp、exp命令导出优化

    本文对Oracle数据的导入导出 imp ,exp 两个命令进行了介绍, 并对其对应的參数进行了说明,然后通过一些演示样例进行演练,加深理解.文章最后对运用这两个命令可能出现的问题(如权限不够,不同o ...

  8. Envoy 源码分析--buffer

    目录 Envoy 源码分析--buffer BufferFragment RawSlice Slice OwnedSlice SliceDeque UnownedSlice OwnedImpl Wat ...

  9. C语言博客作业02——循环结构

    1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量学习体会 1.2.1学习体会 本周学习了循环结构,在之前学习分支结构的时候就涉及到了循环结构中的for循环,这周的又新学了while和do- ...

  10. C博客作业01——分支、顺序结构

    1.本章学习总结 1.1思维导图 本章学习体会及代码量学习体会 1.2.1学习体会 在暑假的时候就有加入新生学习群,对C语言有一定的基础,所以这周的学习相对轻松,但一些细节方面的知识并不是很了解.在这 ...