计算机基础——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开发,需要掌握一些必要的计算机基础.如果你是计算机专业的人或者已经学过类似的课程,可以跳过这篇文章的阅读.计算机基础课程有很多,小编在大学里学过的课程就 ...
随机推荐
- vue-cli脚手架——2.0版本项目案例
一.[准备工作] Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/. Git 各平台安装包下载地址为:http://git-scm.com/dow ...
- vbox 网络配置
vagrant主机与虚拟机通讯网络有两种模式: config.vm.network "private_network", ip: "192.168.33.10" ...
- RuntimeWarning: DateTimeField AppToken.expire_date received a naive datetime (2019-05-16 16:54:01.144582) while time zone support is active. RuntimeWarning)
数据库存储当前时间操作: datetime.datetime.now() 更改为: from django.utils import timezone timezone.now()
- LNMP环境搭建wordpress博客及伪静态
WordPress是使用PHP语言开发的博客平台,是一款开源的软件,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用 ...
- django_rest framework 接口开发(一)
1 restful 规范(建议) 基于FbV def order(request): if request.method=="GET": return HttpResponse(' ...
- jenkins中的流水线( pipeline)的理解(未完)
目录 一.理论概述 Jenkins流水线的发展历程 什么是Jenkins流水线 一.理论概述 pipeline是流水线的英文释义,文档中统一称为流水线 Jenkins流水线的发展历程 在Jenki ...
- 【DRF框架】视图组件
基于mixins视图类 from rest_framework import mixins # 创建视图 class CreateModelMixin(object) def create(self, ...
- Yum三方仓库——EPEL
参考:什么是EPEL 及 Centos上安装EPEL 参考:How to Enable EPEL Repository for RHEL/CentOS 7.x/6.x/5.x 前言 RHEL以及他的衍 ...
- 【DevOps】在CentOS中安装Rancher2,并配置kubernetes集群
准备 一台CentOS主机,安装DockerCE,用于安装Rancher2 一台CentOS主机,安装DockerCE,用于安装kubernetes集群管理主机 多台CentOS主机,安装Docker ...
- String decryption with de4dot
Introduction de4dot is a wonderful tool for deobfuscating known and unknown .NET protections. Dealin ...