【问题标题】:Analyzing this method分析这个方法
【发布时间】:2015-09-11 18:20:17
【问题描述】:

我对在某人的代码上看到的这种方法有疑问。

Scanner scan = new Scanner(System.in);

我知道这个方法的作用,但是我不完全理解这个方法的结构。我对方法、变量、对象和参数有点困惑。

因此,我想问你是否可以帮助我从这个方法中识别出哪个是哪个。

Scanner scan = new Scanner(System.in);

Scanner这个词是一种方法吗? scan 这个词是变量吗? new 是修饰符吗?

哪个是哪个?

【问题讨论】:

  • 其实这不是一个方法。扫描仪是一类。当您执行 Scanner scan = new Scanner(System.in) 时,您将声明一个名为 scan 的变量,并创建一个新的 Scanner 实例,并将 System.in 作为参数传递。
  • 我认为 S.O 是一个适合初学者提问的好社区。我正在读一本书并关注一些视频教程。只是我仍然很困惑。所以“扫描”是一个变量,但我什么时候创建一个新对象?
  • 好的,还有一个问题。所以如果我有“int pablo = 100”。 int是类,pablo是变量,100是参数?
  • 好的,谢谢您的帮助!所以 100 是文字?
  • @Pablo 是的,100 是文字表示。我同意 ShivaShinde。

标签: java variables methods


【解决方案1】:

Scanner 是一个类名。它在这里使用了两次——一次声明局部变量scan,一次调用其构造函数,与new 运算符一起创建它的新实例。

【讨论】:

    【解决方案2】:
    **Scanner scan = new Scanner (System.in);**
    

    Scanner - 是 java.util 包中预定义的类。

    scan - 它是您给定的名称,以便在您的程序中使用它。

    new 关键字 = 使用 Scanner 创建一个调用和扫描对象

    Scanner(System.in) - 是在 Scanner 类中定义的构造函数,它将调用以从用户那里获取输入。

    基本功能是从用户那里获取输入,因为 Java 提供了一个内置类,使用它只需创建一个 Scanner 类的 scan 对象即可让您的生活更轻松。

    【讨论】:

      【解决方案3】:
      • Scanner 是一个类
      • scanScanner 类型的变量
      • new Scanner(System.in) 调用类Scanner 的构造函数,创建该类型的新对象,该对象分配给变量scanSystem.in 是传递给构造函数的参数。

      【讨论】:

        【解决方案4】:

        扫描仪扫描 = new Scanner(System.in);

        上面的语句分为三部分(下面详细讨论):

        声明:加粗的代码都是将变量名与对象类型关联起来的变量声明。

        实例化: new 关键字是创建对象的 Java 运算符。

        初始化: new 操作符之后是对构造函数的调用,该构造函数初始化新对象。

        Oracle Docs

        Scanner这里是一个类,是从java.util.Scanner导入的;

        现在,来到System.in,你熟悉System.out吗?

        所以,System是一个类,这里​​inout指的是键盘输入和

        【讨论】:

        • @Pablo,同理,在上面的例子中,你问的是Scanner scan = new Scanner();,你问的是scan 持有新的Scanner();稍有不同的是,上面例子中的 int 是原始数据类型,而 Scanner 在这种情况下是一个类。
        【解决方案5】:

        扫描仪是类。类是具有某些属性或特征的一段可重用代码。一个类可以多次“使用”。当您使用 Scanner 类时,您会创建该类的一个实例,即 Scanner 类的特定“版本”。您已将其命名为“扫描”,但它可以是任何东西。为了让 java 知道您正在创建 Scanner 类的新实例而不是调用 Scanner 类的先前实例化,您使用保留字“new”。然后,您必须告诉 java 您正在实例化的新对象的类是什么(我知道,您已经这样做了,但这就是语法)。括号表示一个参数。这是用于创建具有正确属性的对象(属于 Scanner 类)的东西。在这种情况下,您说名为“scan”的扫描程序必须使用系统输入 (System.in) 中的值填充自己。然后你有一个名为“scan”的“变量”,它属于 Scanner 类型,其值来自“System.in”。我真的希望这有帮助。请原谅任何错误的格式或违反规则,这是我的第一个答案。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-09-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-05-23
          • 1970-01-01
          相关资源
          最近更新 更多