Java 应用与开发 - Java 语言基础与流程控制大纲 数据类型 常量和变量 关键字与标识符 运算符与表达式 从键盘获得输入 语句 分支结构 循环结构 Java 应用与开发 Java 语言基础与流程控制 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 August 28, 2018 大纲 数据类型 常量和变量 关键字与标识符 运算符与表达式 从键盘获得输入 语句 分支结构 循环结构 参考书目 1. 陈国君等编著 运算符与表达式 从键盘获得输入 语句 分支结构 循环结构 学习目标 ▶ Java 语言基础 1. 数据类型 2. 常量和变量 3. 关键字与标识符 4. 运算符与表达式 5. 从键盘输入数据 ▶ 流程控制 1. 语句和复合语句 2. 分支结构(选择结构) 3. 循环结构 4. 跳转语句 大纲 数据类型 常量和变量 关键字与标识符 运算符与表达式 从键盘获得输入 语句 分支结构 循环结构 大纲0 码力 | 37 页 | 685.82 KB | 1 年前3
JAVA 应用与开发 - 控制台应用程序设计JAVA 应用与开发 控制台应用程序设计 让我们愉快的 Coding 起来吧... ��� �������������� October 13, 2018 ���� ����������� ��������������行参数��������输入 输出的����关 Java �作 �� Java 文件�作的的��方法 ������ �� Jar �����������行� IDE 我们的计算机是台遵守存储程序原理的冯诺依曼机器,基本组成包 括����控制������ CPU��������设����设 �。你所面对的一切 SOC 也好,单板电脑也好,都是高度集成在一 起的冯诺依曼机。 3 41 ����� 1950 年代 IBM 1401 2010 年代树莓派开发板 我们的计算机是台遵守存储程序原理的冯诺依曼机器,基本组成包 括����控制������ CPU��������设����设 load(InputStream inStream) void store(OutputStream out, String header) 12 41 ��输入/输出 ����/�� O 控制台程序的交互方式 ����键盘作为����设����输入数据 �����������作为程序����设���输出数据 ���作��为����/���Standard Input/Output��0 码力 | 63 页 | 2.84 MB | 1 年前3
Java 应用与开发 - 异常处理语言中,程序运行出错被称为出现异常(Exception)。 异常是程序运行过程中发生的事件,该事件可以中断程序指令的 正常执行流程。 O Java 异常分为两大类 1. 错误(Error)是指 JVM 系统内部错误、资源耗尽等严重情 况。 2. 违例(Exception)则是指其他因编程错误或偶然的外在因 素导致的一般性问题,例如对负数开平方根、空指针访问、 试图读取不存在的文件以及网络连接中断等。 小示例 语言中,程序运行出错被称为出现异常(Exception)。 异常是程序运行过程中发生的事件,该事件可以中断程序指令的 正常执行流程。 O Java 异常分为两大类 1. 错误(Error)是指 JVM 系统内部错误、资源耗尽等严重情 况。 2. 违例(Exception)则是指其他因编程错误或偶然的外在因 素导致的一般性问题,例如对负数开平方根、空指针访问、 试图读取不存在的文件以及网络连接中断等。 小示例 一个类之后,后一个类发生了不相容的改变时,再使用前一个类 则会出现链接错误。最常见的就是后一个类的.class 文件被误删 除。 O 虚拟机错误(VirtualMachineError) 当 Java 虚拟机崩溃或资源耗尽时会抛出该错误。其中比较有代 表性的是 StackOverflowError,当应用程序递归太深而导致栈内 存溢出时会出现该异常。 课程配套代码 ± sample.exception.VMErrorSample0 码力 | 33 页 | 626.40 KB | 1 年前3
Nacos架构&原理
由于当时 Spring-cloud 的崛起,微服务多个模块逐步被划分,包括注册中心、配置中心,如果从 产品定位上,期望定位简单清晰,利于传播,我们需要分别开源我们内部产品,这样又会分散我们 品牌和运营资源。另外大部分客户没有阿里这么大的体量,模块拆分过细,部署和运维成本都会成 倍上涨,而且阿里巴巴也是从最早⼀个产品逐步演化成 3 个产品的,因此我们最终决定将内部三个 产品合并统⼀开源。定位为:⼀ 官网:https://nacos.io/ 仓库:https://github.com/alibaba/nacos Nacos 优势 易⽤:简单的数据模型,标准的 restfulAPI,易用的控制台,丰富的使用文档。 稳定:99.9% 高可用,脱胎于历经阿里巴巴 10 年生产验证的内部产品,支持具有数百万服务的大 规模场景,具备企业级 SLA 的开源产品。 实时:数据变更毫秒级推送生效;1w 用等核心问题, 插件解决扩展性问题。 Nacos 架构 < 18 用户层 OpenAPI:暴露标准 Rest 风格 HTTP 接口,简单易用,方便多语言集成。 Console:易用控制台,做服务管理、配置管理等操作。 SDK:多语言 SDK,目前几乎支持所有主流编程语言。 Agent:Sidecar 模式运行,通过标准 DNS 协议与业务解耦。 CLI:命令行对产品进行轻量化管理,像0 码力 | 326 页 | 12.83 MB | 9 月前3
《Java 应用与开发》课程讲义 - 王晓东1.6 课后习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 Java 语言基础与流程控制 9 2.1 Java 语言基础 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 数据类型 . . . . 14 2.1.6 从键盘获得输入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2 Java 流程控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.2.1 语句与复合语句 . . . . . . . 36 4.3 访问控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3.1 类的访问控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3.2 类中成员的访问控制 . . . . . . .0 码力 | 330 页 | 6.54 MB | 1 年前3
Hello 算法 1.1.0 Java版器上进行测试,统计平均效率,而这是不现实的。 另一方面,展开完整测试非常耗费资源。随着输入数据量的变化,算法会表现出不同的效率。例如,在输入 数据量较小时,算法 A 的运行时间比算法 B 短;而在输入数据量较大时,测试结果可能恰恰相反。因此,为 了得到有说服力的结论,我们需要测试各种规模的输入数据,而这需要耗费大量的计算资源。 2.1.2 理论估算 由于实际测试具有较大的局限性,因此我们可以考 为渐近复杂度分析(asymptotic complexity analysis),简称复杂度分析。 复杂度分析能够体现算法运行所需的时间和空间资源与输入数据大小之间的关系。它描述了随着输入数据大 小的增加,算法执行所需时间和空间的增长趋势。这个定义有些拗口,我们可以将其分为三个重点来理解。 ‧“时间和空间资源”分别对应时间复杂度(time complexity)和空间复杂度(space complexity)。 ‧“随 在算法中,重复执行某个任务是很常见的,它与复杂度分析息息相关。因此,在介绍时间复杂度和空间复杂 度之前,我们先来了解如何在程序中实现重复执行任务,即两种基本的程序控制结构:迭代、递归。 2.2.1 迭代 迭代(iteration)是一种重复执行某个任务的控制结构。在迭代中,程序会在满足一定的条件下重复执行某段 代码,直到这个条件不再满足。 1. for 循环 for 循环是最常见的迭代形式之一,适合在预先知道迭代次数时使用。0 码力 | 378 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0 Java版器上进行测试,统计平均效率,而这是不现实的。 另一方面,展开完整测试非常耗费资源。随着输入数据量的变化,算法会表现出不同的效率。例如,在输入 数据量较小时,算法 A 的运行时间比算法 B 短;而在输入数据量较大时,测试结果可能恰恰相反。因此,为 了得到有说服力的结论,我们需要测试各种规模的输入数据,而这需要耗费大量的计算资源。 2.1.2 理论估算 由于实际测试具有较大的局限性,因此我们可以考 asymptotic complexity analysis」,简称「复杂度分析」。 复杂度分析能够体现算法运行所需的时间和空间资源与输入数据大小之间的关系。它描述了随着输入数据大 小的增加,算法执行所需时间和空间的增长趋势。这个定义有些拗口,我们可以将其分为三个重点来理解。 ‧“时间和空间资源”分别对应「时间复杂度 time complexity」和「空间复杂度 space complexity」。 ‧ 在算法中,重复执行某个任务是很常见的,它与复杂度分析息息相关。因此,在介绍时间复杂度和空间复杂 度之前,我们先来了解如何在程序中实现重复执行任务,即两种基本的程序控制结构:迭代、递归。 2.2.1 迭代 「迭代 iteration」是一种重复执行某个任务的控制结构。在迭代中,程序会在满足一定的条件下重复执行某 段代码,直到这个条件不再满足。 1. for 循环 for 循环是最常见的迭代形式之一,适合在预先知道迭代次数时使用。0 码力 | 376 页 | 17.59 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Java 版试,统计 平均效率,而这是不现实的。 另一方面,展开完整测试非常耗费资源。随着输入数据量的变化,算法会表现出不同的效率。例如,在输入 数据量较小时,算法 A 的运行时间比算法 B 短;而在输入数据量较大时,测试结果可能恰恰相反。因此,为 了得到有说服力的结论,我们需要测试各种规模的输入数据,而这需要耗费大量的计算资源。 2.1.2 理论估算 由于实际测试具有较大的局限性,因此我们可以考 为渐近复杂度分析(asymptotic complexity analysis),简称复杂度分析。 复杂度分析能够体现算法运行所需的时间和空间资源与输入数据大小之间的关系。它描述了随着输入数据大 小的增加,算法执行所需时间和空间的增长趋势。这个定义有些拗口,我们可以将其分为三个重点来理解。 ‧“时间和空间资源”分别对应时间复杂度(time complexity)和空间复杂度(space complexity)。 ‧“随 在算法中,重复执行某个任务是很常见的,它与复杂度分析息息相关。因此,在介绍时间复杂度和空间复杂 度之前,我们先来了解如何在程序中实现重复执行任务,即两种基本的程序控制结构:迭代、递归。 2.2.1 迭代 迭代(iteration)是一种重复执行某个任务的控制结构。在迭代中,程序会在满足一定的条件下重复执行某段 代码,直到这个条件不再满足。 1. for 循环 for 循环是最常见的迭代形式之一,适合在预先知道迭代次数时使用。0 码力 | 379 页 | 18.48 MB | 10 月前3
Java 应用与开发 - 线程编程大纲 线程基础 线程控制 线程的同步 Java 应用与开发 线程编程 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 November 6, 2018 大纲 线程基础 线程控制 线程的同步 学习目标 1. 线程基础:理解任务调度、进程和线程,掌握其联系和区别; 掌握 Java 的线程模型,以及如何创建线程;理解后台线程。 2. 线程控制:理解线程的生命周期,明白各阶段的含义;掌握 线程控制:理解线程的生命周期,明白各阶段的含义;掌握 线程控制方法,理解各线程控制方法对线程状态切换的作 用。 3. 线程的同步:理解临界资源问题,进一步明白线程安全的意 义;了解关键字 synchronized 的用法;了解死锁的概念;通 过生产者—消费者问题分析理解线程同步。 大纲 线程基础 线程控制 线程的同步 大纲 线程基础 相关知识回顾 线程的概念模型 创建线程 后台线程 线程控制 线程生命的周期 线程优先级 大纲 线程基础 线程控制 线程的同步 ���� 线程基础 相关知识回顾 线程的概念模型 创建线程 后台线程 线程控制 线程生命的周期 线程优先级 线程串行化 线程休眠 线程让步 线程挂起与恢复 线程等待与通知 线程的同步 大纲 线程基础 线程控制 线程的同步 相关知识回顾 ���� 线程基础 相关知识回顾 线程的概念模型 创建线程 后台线程 线程控制 线程生命的周期 线程优先级0 码力 | 82 页 | 1010.73 KB | 1 年前3
跟我学Shiro - 张开涛.................. 147 第十八章 并发登录人数控制 ..................................................................................................... 155 第十九章 动态 URL 权限控制..................................... 相应的身份; Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用 户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用 户对某个资源是否具有某个权限; Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信 息都在会话中;会话可以是普通 JavaSE 环境的,也可以是如 Web 环境的; 交互; 且它管理着所有 Subject;可以看出它是 Shiro 的核心,它负责与后边介绍的其他组件进行 交互,如果学习过 SpringMVC,你可以把它看成 DispatcherServlet 前端控制器; Realm:域,Shiro 从从 Realm 获取安全数据(如用户、角色、权限),就是说 SecurityManager 要验证用户身份,那么它需要从 Realm 获取相应的用户进行比较以确定用户身份是否合法;0 码力 | 219 页 | 4.16 MB | 10 月前3
共 34 条
- 1
- 2
- 3
- 4













