网站首页 > java教程 正文
没有对象怎么办?
"new"一个哇!
在JAVA中万物皆对象!
用引用操纵对象
- Java中的数据类型分为:基本数据类型和引用数据类型
- 在Java中,一切都被视为对象,尽管一切都是对象,但是操纵的标识符其实一个对象的"引用"
对象存储的地方
- 寄存器
最快的存储区,位于处理器的内部,但是寄存器的数量极其有限,所以一般情况下,我们不能够直接控制只能根据需求进行分配
- 堆栈
位于RAM(随机访问存储器)中,通过堆栈指针可以从处理器那里获取直接支持,堆栈指针向上移动,则释放内存,若向下移动,则分配新的内存。
- 堆
用于存放所有的Java对象,编译器不需要知道存储的数据在堆里存活多长时间,所以在堆里分配存储有很大的灵活性,但是用堆进行存储分配和清理可能比用堆栈进行存储分配需要更多的时间。
- 常量存储
常量值通常直接存放在程序代码内部
- 非RAM存储
数据完全存活于程序之外,可以不受程序的任何控制,在程序没有运行时也可以存在,其中最基本的两个例子: 流对象和持久化对象
基本数据类型
- byte short int long float double char boolean
- 默认值分别为:0 0 0 0 0.0 0.0 空字符 false
- 浮点数默认为double类型,要想表示float类型,需要加后缀f或F
- 浮点数还是存在一定的误差,所以如果在数值计算中不允许有误差,则可以使用BigDecimal类
- 整型值和布尔值之间不能进行相互转换
- 在Java中1和0并不能代替true和false
- Java确定了每种基本类型所占的存储空间的大小,所以Java更具可移植性
- BigInteger(整数)和BigDecimal(浮点数)必须以方法调用的方式取代运算符的方式实现
//使用静态的valueOf方法可以将普通的数值转换为大数值
//注:不能使用人们熟悉的+-*/来处理大数值,而需要使用大数值类的方法
add,subtract,multiply,divide,mod(取余)
BigInteger c = a.add(b); //c = a+b
BigInteger d = c.multiply(b.add(BigInteger.valueOf(2))) //d = c*(b+2)
- 在java中不能再嵌套的两个块中声明同名的变量(在c++中可以,内层定义的变量会覆盖外层变量)
public static void main(String []args)
{
int n;
...
{
int n; //编译报错
}
}
- 整数被0除将会出现一个异常,而浮点数将0除将会得到无穷大或NaN结果,不会报错
- 文档注释:JDK中包含了一个很有用的工具,叫做javadoc,它可以由源文件生成一个HTML文档
格式:
/*
*
*/
猜你喜欢
- 2024-10-25 Oracle发布了Java SE支持路线图,Java 8 支持到2030年
- 2024-10-25 JavaSE_day01_基础知识(day6成员资料)
- 2024-10-25 JavaSE基础-面向对象-[封装、继承、多态]
- 2024-10-25 29_数据类型_常量_字面常量 1,JavaSE【马士兵说】2
- 2024-10-25 零基础学JavaSE,原来只需要明白这一个点
- 2024-10-25 适合java基础的项目终于被我找到了,值得推荐的Java项目实战教程
- 2024-10-25 Java高级工程师必会知识之JavaSE(上)
- 2024-10-25 从零开始学编程/0基础入门学习javaSE
- 2024-10-25 04_小鲨鱼记账系统_登记收入 1,JavaSE【马士兵说】 2
- 2024-10-25 Java SE 9 多版本兼容 JAR 包示例
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)