zoukankan      html  css  js  c++  java
  • JScript.NET(JScript 8.0)编程简介

    1.JScript.NET现在是编译型,强类型语言。

    编译器位于.NET 2.0目录中(通常位于

    %SystemRoot%\Microsoft.NET\FrameWork\v2.0.50727

    )中包含js.net编译器(assembler),可以将JScript编译为.dll库(通过jsc /t:library)或者WinForm可执行文件(jsc /t:winexe)或者WinConsole控制台程序(不指定target或者jsc /t:exe)。

    变量可以指定类型,也可以不指定。但是一旦指定类型,变量则为强类型,不同类型的变量不能随意赋值。(类型现在符合ECMA标准,行为类似ActionScript)。指定类型的方式和AS语言一样

    var variable:type = initial_Value;

    编译时引用dll的方法是

    jsc /t:exe /r:System.dll demo.js

    (例子中引用了System.dll)

    2.新的组织形式

    package,import(既不是Imports也不是using)语句现在可以使用.可以定义简单的包。

    下面是一个获取运行时的命令行参数的例子(Args[0]总是存在,并且等于程序的名字)

    import System;
    import System.Enviroment;
    import System.IO;
    import System.Form;
    import System.Threading;
    package tool{
      class cmd{
        public function getArgs():String[]{
          return Args:String[] = Environment.GetCommandLineArgs();
        }
      }
    }

    3.面向对象

    现在相比JScript多了很多可用的修饰符.static,public,private在类内都可用.class,extends,interface,implements,override,abstract等也都实现了。

    抽象,接口,重载也都得到了实现。JScript.NET是一种面向对象的,可以调用.NET类库的语言。唯一缺乏的是IDE.

    一个WinForm的继承的例子

    import System;
    import Accessibility;
    import System.Windows.Forms;
    import System.Drawing;

    class EventTestForm extends Form
    {
    var startBtn : Button;
    var socket : Socket;

    function EventTestForm()
    {
    startBtn
    = new Button;
    startBtn.Text
    = "开始监听";
    Controls.Add(startBtn);

    // Connect the function to the event.
    btn.add_Click(ButtonEventHandler1);
    }

    // Add an event handler to respond to the Click event raised
    // by the Button control.
    function ButtonEventHandler1(sender, e : EventArgs)
    {
    socket
    = new Socket;
    }
    }

    Application.Run(
    new EventTestForm);

    4.JScript内置对象和 CLR对象

    CLR对象意味着性能效率,JScript内置对象意味着灵活。

    String对象同时可以使用.toString()方法(JScript对象方法)和.ToString()方法(CLR对象方法)

    5.结构化的异常处理

    try,catch,finally和C#中都一样,同样可以进行多种异常的捕捉。也可以抛出异常和自定义异常。

  • 相关阅读:
    WPF如何判断PNG中的点是透明的
    Silverlight DataGrid自适应数据
    DEVExpress For WPF 中GridControl如何实现滚动分页(延迟查询)
    如何通过样式来处理根据自身其他属性内容赋值其他属性值的方法研究
    最近涉及到的一些需要备忘的东西
    (转载)Setup Factory 会话变量
    (转载)解决WPF动画属性锁死问题
    WPF InkCanvas MouseDown及MouseLeftButtonDown事件不触发的代替事件
    在win7与XP系统下 C#缺省路径不同
    Xamarin笔记
  • 原文地址:https://www.cnblogs.com/easyc/p/1660825.html
Copyright © 2011-2022 走看看