刘德华

java基础之反射---重要

我的未来我决定 提交于 2020-03-28 08:41:18
java反射: 反射是框架设计的灵魂 (使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码)); 1:获取Class字节码文件对象的三种方式: 2 /** 3 * 获取Class对象的三种方式 4 * 1 Object ——> getClass(); 5 * 2 任何数据类型(包括基本数据类型)都有一个“静态”的class属性 6 * 3 通过Class类的静态方法:forName(String className)(常用) 7 * 8 */ 9 public class Fanshe { 10 public static void main(String[] args) { 11 //第一种方式获取Class对象 12 Student stu1 = new Student();//这一new 产生一个Student对象,一个Class对象。 13 Class stuClass = stu1.getClass();//获取Class对象 14 System.out.println(stuClass.getName()); 15 16 //第二种方式获取Class对象 17 Class stuClass2 = Student.class; 18 System.out.println(stuClass == stuClass2);/

你必须知道的指针基础-6.内存的初始化及结构体的使用

孤者浪人 提交于 2020-03-08 20:58:55
一、内存的使用 1.1 你创建的内存区域可能是脏的   当我们创建一个内存区域的时候,内存中的数据可能是乱七八糟的(可能是其他代码用过后遗留的数据),如下面一段代码: int main(int argc, char *argv[]) { // 下面申请的20个字节的内存有可能被别人用过 char chs[20]; // 这个代码打印出来的可能就是乱码,因为printf的%s是“打印一直遇到'\0'”。 printf("%s\n",chs); return 0; }   其运行结果是如下图所示的乱码,因为printf的%s是“ 打印一直遇到'\0' ”。 1.2 解决脏内存区域的办法   那么,如何解决上面我们有可能会访问的脏内存区域呢?在C语言中,可以采用如下的两种方法:   (1)使用memset函数首先清理一下内存: void *memset(void *s, int ch, unsigned n); 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。   那么,我们可以使用memset函数来清理内存,即填充创建的这块内存区域: int main(int argc, char *argv[]) { // 下面申请的20个字节的内存有可能被别人用过 char

Java基础之一反射

不想你离开。 提交于 2020-02-17 13:33:02
反射是框架设计的灵魂 (使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码)) 一、反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象. 以上的总结就是什么是反射 反射就是把java类中的各种成分映射成一个个的Java对象 例如:一个类有:成员变量、方法、构造方法、包等等信息,利用反射技术可以对一个类进行解剖,把个个组成部分映射成一个个对象。 (其实:一个类中这些成员方法、构造方法、在加入类中都有一个类来描述) 如图是类的正常加载过程:反射的原理在与class对象。 熟悉一下加载的时候:Class对象的由来是将class文件读入内存,并为之创建一个Class对象。 其中这个Class对象很特殊。我们先了解一下这个Class类 二、查看Class类在java中的api详解(1.7的API) 如何阅读java中的api详见java基础之——String字符串处理 Class 类的实例表示正在运行的 Java 应用程序中的类和接口

JavaScript-对象

冷暖自知 提交于 2020-01-23 03:08:16
对象 什么是对象? 万物皆对象,对象是一个具体的事物,看得见摸得着的实物。例如,一本书、一辆汽车、一个人可以是“对象”,一个数据库、一张网页、一个与远程服务器的连接也可以是“对象”。 在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等 对象是由属性和方法组成的。 属性:事物的特征,在对象中用属性来表示(常用名称) 方法:事物的行为,在对象中用方法来表示(常用动词) 比如一个手机,它的属性有:大小、颜色、重量、屏幕尺寸、厚度;它的方法有:打电话、发短信、玩游戏、砸核桃。 JavaScript中的对象表达结构更清晰,更强大 创建对象的三种方式 利用字面量创建对象 // 1.利用对象字面量创建对象 {} // var obj = {}; // 创建了一个空的对象 var obj = { uname: '张三疯', age: 18, sex: '男', sayHi: function() { console.log('hi~'); } } // (1) 里面的属性或者方法我们采取键值对的形式 键 属性名 : 值 属性值 // (2) 多个属性或者方法中间用逗号隔开的 // (3) 方法冒号后面跟的是一个匿名函数 // 2. 使用对象 // (1). 调用对象的属性 我们采取 对象名.属性名 . 我们理解为 的 console

C#墨攻IOC

不想你离开。 提交于 2020-01-11 21:39:57
原文叫看《墨攻》理解IOC概念 2006年多部贺岁大片以让人应接不暇的频率纷至沓来,其中张之亮的《墨攻》算是比较出彩的一部,讲述了战国时期墨家人革离帮助梁 国反抗赵国侵略的个人英雄主义故事,恢宏壮阔,浑雄凝重的历史场面相当震撼。其中有一个场景:当刘德华所饰的墨者革离到达梁国都城 下,城上梁国守军问:“来者何人?”,刘德华回答:“墨者革离!”,我们不妨用C#(原文是java,我修改)对这段“城门问对”的场景进行编剧并借由这个例子来理解IoC的内涵。 剧本和饰演者耦合 MoAttack代表《墨攻》的剧本,cityGetAsk()代表“城门问对”这段剧情,LiuDeHua是具体饰演者刘德华: 代码清单1 public class MoAttack { public MoAttack() {} public void cityGateAsk(){ LiuDeHua ldh = new LiuDeHua(); ① 演员直接侵入剧本 ldh.responseAsk("墨者革离!"); } } 我们会发现以上剧本在①处,作为具体饰演者的刘德华直接侵入到剧本中,使剧本和演员直接耦合在一起: 图(1)剧本与演员直接耦合 一个明智的编剧在剧情创作时应围绕故事的角色进行,而不应考虑角色的具体饰演者,这样才可能在剧本投拍时自由地选择任何适合的演员,而非绑定在刘德华一人身上。通过以上的分析

selenium自动化模块的应用

独自空忆成欢 提交于 2020-01-10 16:16:42
一、selenium概念   1、用来完成浏览器自动化的相关操作   2、使用程序编写一系列的键盘、鼠标的相关操作(让浏览器来完成), 当我们执行代码时,就会触发一系列的事件 二、selenium在爬虫中的作用   1、可以获取动态加载的数据 三、selenium安装   1、pip install selenium   2、下载浏览器驱动程序: http://chromedriver.storage.googleapis.com/index.html (找到最接近的版本) 四、selenium使用   1、导包: from selenium import webdriver   2、实例化某一款浏览器的驱动,获取一个对象   3、使用对象中的相关方法制定一系列的事件(键盘、鼠标的相关操作) 五、简单案例,打开百度 from selenium import webdriver bro = webdriver.Chrome(executable_path='./chromedriver.exe') bro.get("https://www.baidu.com") bro.close() 六、自动打开百度,搜素刘德华 # 百度搜索刘德华案例 import time from selenium import webdriver bro = webdriver.Chrome

从简单的例子理解泛型

牧云@^-^@ 提交于 2019-12-30 09:00:44
前言 .Net开发基础系列文章,对自己之前写过的代码备忘,如能给人予帮助,不甚荣幸。个人能力有限,如有差错或不足,请及时指正。 从简单的例子开始 话说有家影视公司选拔偶像派男主角,导演说了,男演员,身高是王道。于是有下面代码: //男演员实体类 public class Boy { //姓名 private string mName; //身高 private int mHeight; public string Name { get { return this.mName; } } public int Height { get { return this.mHeight; } } public Boy(string name, int height) { this.mName = name; this.mHeight = height; } } //演员选拔类 public class Compare { //导演导超女出生,喜欢一对一PK public Boy WhoIsBetter(Boy boy1, Boy boy2) { if (boy1.Height > boy2.Height) { return boy1; } else { return boy2; } } } //测试 static void Main(string[] args) { Boy boy1 =

浅谈CSS 选择器

前提是你 提交于 2019-12-10 08:36:34
A 标签HTML 选择器 body { padding : 0px ; margin : 0px ; background-color : #ffdee0 ; } B 类别CLASS 选择器 <style type="text/css"> .hongkong { color : blue ; } .hunang { color : red ; } </style> ...... <p class="hongkong">刘德华</p> <p class="hongkong">张学友</p> <p class="hunang">何炅</p> <p class="hunang">汪涵</p> C 专用ID 选择器 <style type="text/css"> #wanghan { color : blue ; } </style> ...... <p>刘德华</p> <p>张学友</p> <p>何炅</p> <p id="wanghan">汪涵</p> D 选择器组合筛选 <style type="text/css"> /* 只有<h1>标签中class值:"hongkong"的改成蓝色 */ h1.hongkong { color : blue ; } /* 只有<h1>标签中id值:"hunang"的改成红色 */ h1#hunang { color : red ; } <

模块初识

匆匆过客 提交于 2019-12-05 04:19:51
模块初识 储存着很多常用功能的py文件就是一个模块.模块就是一系列常用功能的集合体 为什么要使用模块? 组织结构更清晰,方便管理,易维护 拿来主义,节省代码,大大提升开发效率 py文件两种功能: 执行代码(承载代码),俗称脚本 模块(被引用,被执行) 模块的分类 内置模块,也叫标准库,此类模块就是python 解释器提供的,time,os等200多种 第三方模块,第三方库,各种python大神写的非常好用的模块,必须通过pip install指令安装的模块,比如Django等,大概有6000多个 自定义模块,我们自己定义的一些模块 # 示例 # haha.py name = '刘德华' lst = [1, 2, 3] def fucn(): print('haha模块', name) def change(): global name name = '张学友' def lst_append(): lst.append(4) # 这个haha.py文件就是一个模块 引用模块的方法 import使用:import 模块名 引用模块会做三件事: 创建一个以模块名命名的名称空间,类似全局名称空间(这里保存的是变量与值的对应关系) 执行这个名称空间(即导入的模块)里面的代码,将其加载到内存.(如果多次导入,则只有第一次会执行代码) 通过此模块名.的方式引用模块里面的内容(变量 函数名 类名等

JavaScript高级

邮差的信 提交于 2019-11-29 05:03:18
1.面向过程与面向对象  1.1面向过程   面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了。   面向过程是 实现代码逻辑的 步骤,主要是把重心点放在实现功能上,不太去考虑封装   优点: 效率高,但是维护起来太麻烦     1.2面向对象   面向对象是把事务分解成一个个对象,然后由对象之间分工合作。   主要的重心点,先放在功能模块的划分,然后想着什么功能模块可以去进行复用(可以进行抽取)   优点: 会让我们功能具备模块化开发,一个模块就负责一个功能,后续方便我们的维护    三大特性:继承性、封装性、多态性(抽象性) 2.对象与类   2.1 对象     对象是由属性和方法组成的:是一个无序键值对的集合,指的是一个具体的事物   属性:事物的特征,在对象中用属性来表示(常用名词)   方法:事物的行为,在对象中用方法来表示(常用动词)   创建对象的两种方法     1.字面量创建对象           var ldh = {       name: '刘德华',       age: 18       }       console.log(ldh);     2.构造函数创建对象       function Star(uname,age){         this.uname = name;