计算机基础——Java笔记一
- 数据类型
- 变量
.png)
- 运算符
关系运算符
位运算符
逻辑运算符
赋值运算符
- 控制语句
- while/for循环
- 方法
- 递归结构/递归方法
- api文档
.png)
- scanner输入,可以使用键盘输入
- 面向对象(object-oriented)
类,对象,面向对象的三大特征
.png)
通过类来组织代码,用对象封装数据C 面向过程,一个一个方法为组织组织起来的C++ 一个一个类为组织组织起来的,里面有变量有方法。相近的数据相近的行为放在一起。 组织在一起。(复杂的比较有优势)有了面向对象仍然需要面向过程的面向对象的思维去把握整体,面向过程的思维去把握细节.png)
面向对象编程(OOP)的本质:以类的方式组织代码,以对象的方式(封装)数据。(先写类再引出对象)面向对象思维:OOA,OOD(先有对象再有类)对象:具体的事物 abstract类:对对象的抽象(抽象:抽出象的部分)先有具体的对象,然后抽象出对象中相像的部分归纳出类,通过类再认识其他对象。编程是先有类,再写对象对象:object/instance(实例)都是对象对象是以类为模板建立起来的。类就是模板学Java:学别人写好的类,写自己的类- 类的属性(类的成员变量)(静态的数据)
属性若未初始化则使用默认值:数值0, 0.0, \u0000, null, false.局部变量则系统不会初始化。- 类的方法(动态的行为)
Java中方法参数传递都是 值传递!(方法传参传的都是值/指向的地址)Java语言中除了基本类型之外的其他变量类型都是引用类型。Java中对象是通过引用reference对其操作的。(引用了某个对象的地址)内存中的调用栈:存放局部变量堆:存放new出来的对象方法区:也是堆 存放类的信息(代码),static变量,常量池(字符串常量)等。
垃圾回收机制(Garbage Collection)
自动回收,System.gc()通知清理内存。- 构造器/构造方法 constructor
归属于方法,通常都还在创建的类中写着,只是这个方法是用来创建对象的而已。用于构造该类的实例(实例即对象)[修饰符] 类名 (形参列表){//n条语句}方法通过new或者对象来调用(因为方法要通过对象来调用,但是这里的构造方法要调用的时候还没有对象,所以就用new来调用这个构造方法。)构造器名称必须和类名一致不需要返回值无需写return经常用来构造该类的对象,或者用来初始化对象的属性- 重载(overload)
方法的重载:同一个类中,一个方法名可以有多种不同的方法。(形参的类型,个数,以及顺序不同都可以构成重载)。但是返回值类型以及形参的名称不同就无法构成重载。调用时会自动选择匹配对应的方法。重载的本质就是只要对同名的方法不构成歧义,则可以重载。因为构造器也是方法,所以重载对构造器也适用。构造器也可以重载。定义类的时候没有(),在定义跟类同名的方法的时候一定有()。- static变量
在类中,用static声明的成员变量为静态变量,或者叫类属性,类变量。在内存中是置于堆的方法区中,static的方法和static的变量都在堆中。为静态方法。调用时可直接“类名.类属性”不需要对象就可调用。普通变量都是从属于对象的,但是static是从属于类的。静态方法中不能引用非静态的变量(因为静态方法从属于类,而普通变量和类从属于对象)不加类名就是本类的方法/变量,加类名是调用其他类的方法/变量。普通方法中可以调用静态的属性和方法。在静态中不能调用非静态的属性和方法(因为静态中调用不到非静态的属性和方法)。对象可以用类的也可以用对象的。类只能用类的不能用对象的。- this(指代当前对象)
每个普通方法(非类方法)都会自动传的隐式参数普通方法中,this总是指向调用该方法的对象。构造方法中,this总是指向正要初始化的对象。this不能用于static方法(因为this这个默认参数在static方法中没有对象,也不传this,也传不过去)。
计算机基础——Java笔记一的更多相关文章
- 计算机基础--Java中int char byte的关系
计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用 ...
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- Java基础复习笔记基本排序算法
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- Java基础复习笔记系列 四 数组
Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...
- Java学习之计算机基础(一)
阅读本文大概需要 4 分钟 想要开始学习Java开发,需要掌握一些必要的计算机基础.如果你是计算机专业的人或者已经学过类似的课程,可以跳过这篇文章的阅读.计算机基础课程有很多,小编在大学里学过的课程就 ...
随机推荐
- U盘因格式化 NTFS 中断造成无法识别,生产平台同样无法识别的修复处理方案
特征: 电脑设备管理器(win10):识别到大容量存储设备 电脑磁盘管理:识别可移动磁盘无媒体 ChipGenius(v4_19_0319):能识别到制造商,但识别不到芯片具体型号 U盘相关生产平台: ...
- Linux日志查看
Linux日志查看: 1.Last -a 把从何处登入系统的主机名称或IP地址,显示在最后一行.-d 指定记录文件.指定记录文件.将IP地址转换成主机名称.-f <记录文件> 指定记录文 ...
- c# 调试过程
- Vue框架之vuex的使用
1.首先需要在你的项目目录下安装vuex 终端命令: 2.在全局组件中导入与声明vuex 3.创建store实例对象 let store = new Vuex.store({ state:{ }, m ...
- c语言int类型的变量输入一个字符出错
今天遇到一个C语言的小问题,就是写一个简单的计算器,定义一个%f%c%f的三个变量,作2+3,2-3这种可以不断输入并输入“OFF”跳出循环的计算器功能,便会出现错误: 错误的示例代码如下: #inc ...
- 软硬RAID 和 不常见的RAID
若转载请于明显处标明出处:http://www.cnblogs.com/kelamoyujuzhen/p/5561809.html 为啥子引入RAID? 存储最现实的两个问题:速度.容量 001——计 ...
- 没想到有一天我喜欢上java是因为微软,感谢啊
一直不喜欢java就是没有好的 ide, eclipse myeclipse idea 对于习惯visual studio的人 真的太好了 感谢微软 感谢visual studio code
- 大数据之路week07--day01(HDFS学习,Java代码操作HDFS,将HDFS文件内容存入到Mysql)
一.HDFS概述 数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统 ...
- eclipse中导入一个web项目
首先 一般会因为环境不同而出错 所以还需要进一步配置,项目上右键properties
- HTML5 服务器发送事件(Server-Sent Events)
沈阳SEO:HTML5 服务器发送事件(server-sent event)允许网页获得来自服务器的更新. Server-Sent 事件 - 单向消息传递 Server-Sent 事件指的是网页自动获 ...