一.前言 动态语言:程序运行时,可以改变程序结构或变量类型.典型的代表:Python,ruby,JavaScript 如JavaScript代码: function test(){ var s="var a=3;var b=5;alert(a+b)" eval(s) } 但是 C.C++.Java不是动态语言,但是Java有一定的动态性,可以称之为准动态语言,可以利用反射机制.字节码操作获得类似动态语言的特性. Java的动态性让编程更加灵活. 二.反射的概念 指的是程序已经运行起来了…
一.概念 应用场景:如在线评测系统,客户端编写代码,上传到服务器端编译运行:服务器动态加载某些类文件进行编译 /*** * */ package cn.sxt.jvm; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import javax.tools.JavaCompiler; import java…
一.概念 [基本] /** * */ package cn.sxt.jvm; import javassist.ClassPool; import javassist.CtClass; import javassist.CtConstructor; import javassist.CtField; import javassist.CtMethod; public class Test_0420_Javassist { public static void main(String[] args…
一.概念 Java脚本引擎是jdk 6.0之后的新功能. 使得Java应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在Java平台上调用各种脚本语言的目的. Java脚本API是连接Java平台和脚本语言的桥梁. 可以把一些复杂的业务逻辑交给脚本语言处理,从而大大提高了开发效率. [代码示例] /*** * 测试脚本引擎 ,就是Java和脚本语言的中介 */ package cn.sxt.jvm; import java.io.FileReader; import java.net.…
一.RandomAccessFile 随机访问流 [版本1] /* *RandomAccessFile 所谓随机读取就是 指定位置开始或指定位置结束 的读取写入文件 * 实现文件的拆分与合并 模拟下载的原理 */ package cn.sxt.test; import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; public class Test_0403_RandomAccessFile…
一.概念 ------->1.BufferedReader/BufferedWriter [参考19.03.31文章] *Reader/Writer-------->2.InputStreamReader/ OutputStreamWriter(转换流,实现字节转字符)--->2-1:FileReader和FileWriter(文件字符类[19.03.31文章]) [代码示例] /**字符流相关 * 2.InputStreamReader/ OutputStreamWriter(转换流,…
一.字节流分类概括 -->1.ByteArrayInputStream /ByteArrayOutputStream(数组字节输入输出)        InputStream/OutputStream            -->2.FileInputStream/FileOutputStream(文件字节输入输出流[参考19.03.30文章]) (四大抽象类之二,与Reader/Writer平辈)   -->3.ObjectInputStream/ObjectOutputStream(…
一.概念 ▪ 什么是计算机网络? 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统, 网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统. 从其中我们可以提取到以下内容: 1. 计算机网络的作用:资源共享和信息传递. 2. 计算机网络的组成: a) 计算机硬件:计算机(大中小型服务器,台式机.笔记本等).外部设备(路由器.交换机等).通信线路(双绞线.光纤等). b) 计算机软件:网络操作系统(Windows 20…
直接通过一个代码示例来熟悉java中通过反射来对构造函数/域以及方法处理的相关API: package com.rampage.jdk7.chapter2; import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.…
Java之注解与反射 注解(Annotation)简介 注解(Annotation)是从JDK5.0引入的新技术 Annotation作用:注解(Annotation)可以被其他程序如编译器等读取 Annotation格式:@"注释名",当然可以添加一些参数值(形如:@Retention(RetentionPolicy.RUNTIME)) 它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法.局部变量.方法参数等的前面,用来对这些元素…
想知道如何在Ubuntu 14.04中安装Java?安装Java肯定是安装Ubuntu 14.04后首先要做的几件事情之一(见http://www.linuxidc.com/Linux/2014-04/100398.htm),而且这也很简单. 许多人比较厌恶Java,但是很有可能因为某些原因你需要安装Java,尽管你很讨厌它.在这篇文章中,我们将展示如何在Ubuntu 14.04安装Java(也可能在Linux Mint 17同样适用). JRE vs OpenJDK vs Oracle JDK…
Ubuntu 17.10 以及其他许多 *buntu 衍生品都已在今年早些时候停止提供 32 位安装镜像.但其中有一个依然坚持提供适用于 i386 架构的镜像,它就是 Xubuntu,但现在 Xubuntu 也决定放弃提供 32 位安装镜像. Xubuntu 及其轻量级 Xfce 桌面环境此前一直在继续为那些希望在旧硬件上安装此 Linux 发行版的用户提供 32 位安装镜像.但是,Xubuntu 开发团队现在决定向前推进,所以放弃了针对 32 位平台的构建版本. 这个决定将会影响 Xubunt…
java web开发_购物车功能实现 之前没有接触过购物车的东东,也不知道购物车应该怎么做,所以在查询了很多资料,总结一下购物车的功能实现. 查询的资料,找到三种方法: 1.用cookie实现购物车: 2.用session实现购物车: 3.用cookie和数据库(购物车信息持久化)实现购物车: ========================================================================= 分析一下这三种方法的优缺点: 1.单纯有cookie实现…
虚拟机 VMware Workstation Pro 15.5.0 及永久激活密钥 https://www.cnblogs.com/zero-vic/p/11584437.html Ubuntu19.04下载地址:https://ubuntu.com/download/desktop/thank-you?country=CN&version=19.04&architecture=amd64 (1)打开虚拟机选择创建新的虚拟机 (2)选择自定义 (3)下一步 (4)选择稍后安装系统,并点击下…
我在ubuntu 16.04下面配置java环境变量的时候,开始在网上查信息的时候,没太注意ubuntu的版本,结果在.bashrc下面设置,在.profile下面设置,都不成功, 后面才想起来搜索ubuntu 16.04的设置,正确的方法如下, 比如我的JDK解压目录是这样的, /usr/jdk1.8.0_92,这就是java的根目录, 那就打开/etc/profile文件进行设置, sudo vi /etc/profile 输入如下内容, export JAVA_HOME=/usr/loca…
在上一个版本:java画图程序_图片用字母画出来_源码发布 基础上,增加了图片同比例缩放,使得大像素图片可以很好地显示画在Notepad++中. 项目结构: 运行效果1: 原图:http://images.cnblogs.com/cnblogs_com/hongten/356471/o_imagehandler_result1.png 运行效果2: 原图:http://images.cnblogs.com/cnblogs_com/hongten/356471/o_imagehandler_res…
在之前写了一篇blog:java画图程序_图片用字母画出来 主要是把一些调试的截图发布出来,现在程序调试我认为可以了(当然,你如果还想调试的话,也可以下载源码自己调试). 就把源码发布出来. 项目结构: 资源文件: 原图:http://images.cnblogs.com/cnblogs_com/hongten/356471/o_imagehandler_resource.png 运行效果: 原图:http://images.cnblogs.com/cnblogs_com/hongten/356…
最近在研究怎样将图片用字母在文本编辑工具中“画”出来. 你看了这个可能还不知道我想说什么? 我想直接上图,大家一定就知道了 第一张:小猫 原图:http://www.cnblogs.com/hongten/gallery/image/143365.html 第二张:林允儿 原图:http://images.cnblogs.com/cnblogs_com/hongten/356471/o_star.png 第三张:郭静 原图:http://www.cnblogs.com/hongten/galle…
一,本文背景 长话短说:asp.net项目中需要用到PDF转换成SWF文件,用户上传后自动调用pdf2swf.exe转换. 但有个问题,执行时权限不够,导致一直报错(滚动条一直在往下滚,刷屏中),见下图 二,解决办法 百度了一堆答案,很多说是要改IIS执行环境的,但我的情况不是这样,因为我是在VS中执行的,还没部署就已经出现错误了. 出去上了个厕所,回来无意中把进度的执行目录改成了pdf2swf.exe所在的目录,竟然一下子好了,(见下图) 其中 pdf2FlashPath 就是 pdf2swf…
Ubuntu 19.04版本系统安装详解 1 .镜像的下载 推荐 阿里云镜像下载 2.安装 1.1.新建虚拟机 注意硬件的兼容性问题 当前只有5.x可以用,其他兼容各位可以尝试下,我也都试过,但只有5.x可以正常开机安装. 选择Linux .Ubuntu64位 虚拟机采用net网络 添加已下载的镜像 检查配置是否正确,然后开启 1.2.开启安装 选择语言 中文简体 选择键盘格式 文本界面选择最小化安装 也可选择图形化界面 最后清除磁盘开始安装就行了 有需求的话可以选最后一项自定义分区方式.…
Ubuntu 19.04 版本安装过程 1. 环境: 使用的虚拟机软件是VMware,版本为 12 .(网上一搜一大推,在此不再演示.) 使用的 ISO镜像为Ubuntu 19.04.(自己也可以在网上搜镜像,不明白的,可以评论.留言) 2. 步骤: 2.1.创建新的虚拟机 1.打开虚拟机,选择 文件 按钮,单击 新建虚拟机 按钮 2.弹出的 新建虚拟机向导 中,选择 自定义 ,点击 下一步 3.下拉选择 5.x (此步骤最为关键,选错,后续无法启动) 4.选择 稍后安装操作系统 ,点击 下一步…
1. 动态语言 程序运行时,可以改变结构或变量类型.典型的语言: Python.ruby.javascript等 如下javascript代码 function test(){ var s = "var a=3;var b=5;alert(a+b);"; eval(s); } C,C++,java不是动态语言,java可以称之为“准动态语言”.但是java有一定的动态性,我们可以利用反射机制.字节码操作获得类似动态语言的特性 java的动态性让编程的时候更加灵活! 2. 反射机制ref…
20172319 2018.04.11-16 <Java程序设计教程>第6周学习总结 目录 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 点评过的同学博客和代码 其他(感悟.思考等,可选) 学习进度条 参考资料 教材学习内容总结 第八章 数组: 数组元素: (1) 数组:同一类型多个数据的集合: (2) 索引(下标):数据在数组里对应的特定位置: 数据的访问方式: 数组名[索引值]:注: N个值达到数组的索引值为0-(N-1)…
20172319 2018.04.11 <Java程序设计教程>第7周课堂测验 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王志强 日期:2018.04.11 必修/选修:必修 目录 测试内容 测试要求 实验步骤 前期准备 需求分析 代码实现及解释 程序运行结果及代码截图 测试过程及遇到的问题 代码链接 参考资料 测试内容 完成编程项目PP7.4:具体参考<java程序设计教程>(第八版) Compareble接口的实现…
VMware 12 安装Ubuntu 19.04 桌面版 1.实验描述 在虚拟机中,手动安装 Ubuntu 19.04 操作系统,为学习 Linux 桌面版提供平台,因此,有的参数有些差异,请勿较真. 2.实验环境 物理机系统:Windows 10 企业版 使用软件的版本:VMware 12 Pro 3.实验工具 [VMware12][001-VMware 12]点我快速打开分享(若异常,请私信,万分感谢) [提取码:0rb9 ] [Ubuntu19][005-Ubuntu19.04]点我快速打…
2019年4月18日, Ubuntu 19.04 正式发布. Ubuntu 19.04 的 Codename 是"disco(迪斯科舞厅)": zkf@ubuntu:~$ lsb_release -c Codename: disco 为了方便国内用户使用最新版的 Ubuntu 19.04, 本文提供了 Ubuntu 19.04 的国内更新源以及更改更新源的完整步骤. 进入更新源文件所在目录: cd /etc/apt/ 备份原有更新源文件: sudo cp -p sources.list…
造冰箱的大熊猫@cnblogs 2019/5/8 Ubuntu 19.04,程序(Firefox.Terminal.Nautilus)启动非常缓慢.点击桌面工具栏上的Nautilus图标后,隔了很久才弹出窗口.在Terminal中,输入sudo命令敲回车后,有明显的停顿后才出现密码输入的提示.闹心,果然是老机器与新系统不般配,没缘分和华丽界面一起愉快玩耍,只能老实回去用LTS.有大侠知道怎么解决卡顿请赐教(个人怀疑是语言或者字体配置有问题导致初始化缓慢的). Dingo! (借用cnbeta图片…
Ubuntu 19.04自动挂载机械盘 创建要挂载的文件夹 sudo mkdir /home/soldier/SOLDIER 获取UUID sudo blkid 分区的TYPE是“ntfs” 编辑/etc/fstab文件 sudo gedit /etc/fstab 在最后加入: UUID=0D18083D0D18083D /home/soldier/SOLDIER ntfs defaults 将已经挂载的磁盘进行修复 sudo ntfsfix 分区名称 例如: sudo ntfsfix /dev…
Java基础回顾_第二部分 Java流程控制 Scanner对象(扫描器,捕获输入) import java.util.Scanner; public class Demo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入数据:"); System.out.println("使用nextLine方式接收:&…
Java反射机制: 是在运行状态中,对于任意一个类(class)文件,都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性.这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制. 反射机制中的类:java.lang.Class; java.lang.reflect.Constructor; java.lang.reflect.Field; java.lang.reflect.Method;java.lang.reflect.Modifier;…