有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java和是检查自定义用户定义方法的源代码的代码(请参阅程序中的代码)

正在寻找在java程序中显示用户创建的自定义方法的代码的方法。我想查看专门命名的定制java方法的代码。我不是在寻找查看java中内置的那些标准方法的代码的方法

在R中,很容易看到用户创建的函数的代码,或者查看许多内置函数的代码。只需输入函数名,后面不带括号。例如,从功能数据中显示的部分代码。框架如下图所示。java中应该有类似的特性,这似乎是合理的

data.frame

function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, 
    fix.empty.names = TRUE, stringsAsFactors = default.stringsAsFactors()) 
{
    data.row.names <- if (check.rows && is.null(row.names)) 
        function(current, new, i) {
            if (is.character(current)) 
                new <- as.character(new)
            if (is.character(new)) 
                current <- as.character(current)
            if (anyDuplicated(new)) 
                return(current)
            if (is.null(current)) 
                return(new)
            if (all(current == new) || all(current == "")) 
                return(new)
            stop(gettextf("mismatch of row names in arguments of 'data.frame', item %d", 
                i), domain = NA)
        }
    else function(current, new, i) {
        if (is.null(current)) {
            if (anyDuplicated(new)) {
                warning(gettextf("some row.names duplicated: %s --> row.names NOT used", 
                  paste(which(duplicated(new)), collapse = ",")), 
                  domain = NA)
                current
            }
            else new
        }
        else current
    }
    object <- as.list(substitute(list(...)))[-1L]
    mirn <- missing(row.names)
    mrn <- is.null(row.names)
    x <- list(...)
    n <- length(x)
    if (n < 1L) {
        if (!mrn) {
            if (is.object(row.names) || !is.integer(row.names)) 
                row.names <- as.character(row.names)
            if (anyNA(row.names)) 
                stop("row names contain missing values")
            if (anyDuplicated(row.names)) 
                stop(gettextf("duplicate row.names: %s", paste(unique(row.names[duplicated(row.names)]), 
                  collapse = ", ")), domain = NA)
        }
        else row.names <- integer()
        return(structure(list(), names = character(), row.names = row.names, 
            class = "data.frame"))
    }
    vnames <- names(x) 

     etc ...................

共 (1) 个答案

  1. # 1 楼答案

    你也可以看到其他人用Java编写的函数,但你必须通过源代码来实现。如果你有一个IDE,你应该有一个“显示声明”功能。例如,在IntelliJ中,只需按住ctrl键并单击一个方法调用,就会显示执行了什么代码

    在R或例如Python中看到的特性更多地出现在可以解释的语言中。有了Jshell,即Java的REPL,您可以直接从REPL中看到Java文档,请参见https://cr.openjdk.java.net/~rfield/tutorial/JShellTutorial.html#tab-completion snippets