javase基础笔记2——数据类型和面向对象
API:Application program interface 程序调用一个方法去实现一个功能 正则表达式:regex 用来匹配的 javaEE里边有三大框架 SSH struts spring hiberate java c/c++ java c# c语言 32个保留关键字
数据类型
原始数据类型(primitive)/基本数据类型
bit 8bit=1byte(字节) class 字节码 bytecode
java中四类八种 1、数值型 byte 2的7次方 1字节 -2的7次方到正的2的7次方-1 -128 ~ 127 short 2的15次(正数) 2字节 1,2,3 int 2的31次 4个字节 long 2的63次 8个字节 2、文本型 char 2的15次方 2个字节 3、浮点型 float double 4个字节 8字节 0.0f 0.0 4、逻辑性 boolean(布尔) true false 在c语言中可以与零和1置换 在java中不行 1/8个字节
变量是对程序中数据存储的抽象 数据类型是变量运算属性的抽象 1.表数范围 2.施加的运算种类
引用数据类型(reference)/复合数据类型 数组array 类class 接口interface
可能损失精度 定义变量的时候数据类型出错
字面量:数值类型的字面量是int 浮点类型的字面量是double 报错的原因:类型转换异常。 大类型的数据转换为小类型的数据会出错 标识符的概念 :class public static interface int byte 命名规范: 类名和方法名和变量名的命名规范:组成内容包括:字符(字母和符号)数字下划线$组成,但是不能以数字开头! 命名方法:java驼峰命名法 c匈牙利命名法 对于类和方法的要求 类名首字母必须大写Class 对于方法小写,但是对于多个单词组成的方法名从第二个单词的首字母开始依次大写 eg:binarySearchInt 折半查找
注释:注释不是给机器看的,是给人看的!
//java中一共有三种注释 // // 单行注释,多行注释(段落注释),文档注释(是一种特殊的多行注释) //注释在程序中不会被翻译 //单行注释: // // 段落注释 /*开始 */ 结尾 //段落注释不可以嵌套
//文档注释 /**开始 */ 结尾 编译程序遇到段落注释的开头就会把直到段落标志结束以前的所有内容都当作注释的内容 //提前闭合的问题 段落注释是从c++中沿袭过来的 关于单行注释和段落注释和文档注释:javadoc中有用途 注释的重要性:一个优秀的程序的要求3分之一的注释 常量:不会改变的量 1,2,3 变量:相当于一个箱子,可以随时往里边存值 进制的表现:10 165 012八进制 0x表示16进制 0x123
byte b1=3,b2=4,b; b=b1+b2; b=3+4;
补充: 所有数据类型排序(按照字节码)byte,short,char-->int-->long-->float,double 如果高类型的转换为低类型的会出现类型转换异常
========================================================== 总结: 赋值号右边的东西: 1,是变量 1,低类型和高类型相互运算出来一定是高类型的byte+int=int 2,相同类型的,根据字面量而定。 2,是常量,检查该常量值是否超过了表数范围
byte b1=3,b2=4,b; b=b1+b2; b=3+4;
运算符,流程控制 与或非 乘 + 事物的另一面 & && 的区别 true & false 假 真 | 假 真
&&只看左面 左面是假了右边不用看,直接是假 ||
流程控制: 四种:顺序结构,选择(if),循环(while,for) if/else、switch语句 注意1:switch语句要注意防穿透 switch case:break default:(默认要执行的) 注意2:switch语句接收的数据类型 short int byte 数组 枚举(enum),字符不能接收long 循环:for while for(初始化;判断;增量) 有明确的循环次数的时候用 while(条件) 有明确的结束条件时用while循环 for循环和while循环可以替换
最简单的无限循环 for(;;) while(true)
自增自减运算符
优先级:
一元运算符>二元运算符>三元运算符
+ - * / % 二元运算符 a+b
++i i++ 自增运算符
格式:?:三目运算符 if条件判断做区别 在一定程度上互换的。 判断的条件?判断成立执行的语句:判断失败执行的语句
字符形式char类型用''引起来,String类型字符串类型用""双引号引起来
补充:运算符的运算顺序
语言中的=赋值运算符 数学中的== 双等于才是语言= a=10; a==10;判断a是否为10
=赋值运算符的优先级最低,其次是双目运算符这些,单目运算符 运算符运算是必须出结果的 如果我运算的的输出内容不是结果就不行 必须要有明确的输出结果返回,才可以互换
转义字符
\n 换行 \t 水平制表 \v 垂直制表 \\ 斜杠
以\为标志开头的一些字符就是转义字符 \u57899
jdk1.5以后包装类。自动拆装箱
=========================================================
面向对象
封装 继承 多态
封装:就是把数据包裹起来。属性和方法 继承:子类继承父类 小的继承大的,但是小的比大的的内容要丰富extends 多态:有了继承才有了多态,子类和父类的相互转换
面向过程,为什么被取代?
是不是所有的方法都要自己写,不利于程序的开发
而对于面向过程:省时
面向对象:万物皆对象
封装:方法(动作)和属性(固有的状态)
对象:new对象,第二种用静态方法调用

javase基础笔记2——数据类型和面向对象的更多相关文章
- JavaSE学习笔记(2)---面向对象基础
JavaSE学习笔记(2)---面向对象基础 1.面向对象具有三大特征:封装性.继承性和多态性,而面向过程没有继承性和多态性,并且面向过程的封装只是封装功能,而面向对象可以封装数据和功能.所以面向对象 ...
- JavaSE学习笔记(3)---面向对象三大特性
JavaSE学习笔记(3)---面向对象三大特性 面向对象的三大特征:继承.封装.多态 1.封装 面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改.然 ...
- JavaSE基础之double数据类型的格式化
JavaSE基础之double数据类型的格式化 1.double 数据类型的格式化工具类:DoubleFormatUtil.java package cn.com.zfc.util; import j ...
- javase基础笔记4——异常/单例和类集框架
继承 extends final关键 多态 是在继承的基础上 接口 interface 异常 exception 包的访问可控制权限 private default protect public 异常 ...
- javase基础笔记3——this关键字和内存图
什么是面向对象? 面向过程. 面向过程:解决一个问题的思路和方法以及步骤 面向对象:把一些具有相同特征的问题抽象成一个对象,用""""对象.方法()" ...
- java基础笔记(6)----面向对象的三大特性
简介:面向对象的三大特性就是封装,继承,多态,是面向对象的核心. 封装 简介:封装是类的边界,可以对数据起到保护作用 特性:属性私有,提供公开的get/set方法 属性私有:private 数据类型 ...
- Java基础笔记之数据类型
一.数据类型 (一)8种基本数据类型(内置数据类型\C#中为值类型) 字符长度:1byte = 8 bit; 布尔:可认为是 1byte (8 bit);
- JavaSE基础知识(5)—面向对象(5.4面向对象三大特征:封装、继承、多态)
面向对象编程具有三大特征: 封装 继承 多态 一.封装 1.好处 狭义的封装:也就是属性的封装,避免了任意赋值的危险,提高了数据的安全性! ①隐藏一个类中不需要对外提供的实现细节 ②使用者只能通过实现 ...
- JavaSE基础知识(5)—面向对象(5.2类的成员)
一.属性 1.语法 数据类型 属性名 [= 属性值]; 2.特点 ①属性的数据类型可以为任意类型,包含基本类型或引用类型②属性可以不用手动赋值,有默认值 int——0 double——0.0 char ...
随机推荐
- python判断文件和文件夹是否存在
import osos.path.isfile('test.txt') #如果不存在就返回Falseos.path.exists(directory) #如果目录或文件不存在就返回False
- 用Java计算某个日期100天后的日期
用Java计算日期时间,首先考虑到时间类,Java中提供的和时间日期相关的类里,有一个Calendar类,可以获取某个时间日期. 计算某个日期100天后的日期,思路如下: 1.先设定时间,例如2017 ...
- ios 多线程必读内容 :锁
大学时的生产者消费者问题还记得吗?ios中的锁,请阅读以下官方文档,虽然是英文的,但是说的非常准确: Threading Programming Guide 中的 Synchronization ht ...
- IOS lib(.a)库冲突解决办法
在引入第三方lib(.a)库时,经常会由于第三方lib库中又引入同你现有工程相同的开源代码而造成.o冲突,最近在集成汉王名片识别时发生ASIHttp的.o冲突.我想说的是像这种开源的使用率很高的源代码 ...
- ACM/ICPC 之 平面几何-两直线关系(POJ 1269)
题意:给定四点的坐标(x,y),分别确定两直线,求出其交点,若重合or平行则输出相应信息 用四个点的坐标算出直线通式(ax+by+c=0)中的a,b,c,然后利用a,b,c计算出交点坐标(其他公式不够 ...
- 让最新官方编译的 ffmpeg 在 XP 上 跑起来
下载 fix-ffmpeg-bin.7z , 解压到 ffmpeg 的 bin 目录下, 运行 fixff.cmd 即可. fix-ffmpeg-bin.7z FT ft[]={ {"_wf ...
- Java for LeetCode 217 Contains Duplicate
Given an array of integers, find if the array contains any duplicates. Your function should return t ...
- hdu 1972.Printer Queue 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1972 题目意思:需要模拟打印机打印.打印机里面有一些 job,每个job被赋予1-9的其中一个值,越大 ...
- maven加载本地lib下的jar包(pom.xml)
1.将本地jar放置到仓储库在jar包目录下 mvn install:install-file -Dfile=sqljdbc4.jar -DgroupId=com.microsoft.sqlserve ...
- 解压zip文件中文文件名乱码问题
主要原因是,在windows下压缩文件时,是以系统的默认编码(gbk,gb18030)来压缩,zip文件并没有声明编码的格式,因此,linux下解压缩时,也会使用系统默认的格式(utf-8)解压缩,编 ...